android
「已注销」
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
android handler (2)
享元模式 主要用于减少创建对象的数量,以减少内存占用和提高性能。 private static Message sPool; private static int sPoolSize = 0; private static final int MAX_POOL_SIZE = 50; public static Message obtain() { synchronized (sPoolSync) { if (sPool != null) { Messag原创 2020-08-27 11:38:47 · 210 阅读 · 0 评论 -
android线程相关
线程 cpu调度的最小单位 进程 进程是程序运行资源分配的最小单位 并发和并行 并行:同一时间能够执行不同任务,4核cpu有四个线程,并行数量就是4,如果超频,并行数量位8 并发: 单位时间内能执行多少不同任务 启动线程的方式 1 Thread thread = new Thread(){ @Override public void run() { } }; thread.start(); 2 Runnable runnable = new Runnable() {原创 2020-08-25 15:19:56 · 233 阅读 · 0 评论 -
android handler源码解析
handler通信是一个内存共享的方案 Handler public class Handler { public Handler(@Nullable Callback callback, boolean async) { // 拿到Looper里ThreadLocal储存的Looper对象 mLooper = Looper.myLooper(); } } public final class Looper { static f原创 2020-08-24 11:54:59 · 283 阅读 · 0 评论 -
代码设置drawable padding
在代码中设置drawable padding的方法: Drawable drawable= getResources().getDrawable(R.drawable.drawable); tvTest.setCompoundDrawables(drawable,null,null,null); 这种设置方法是不会显示的。关键代码:drawable.setBounds(0, 0, drawab原创 2017-04-29 16:37:14 · 2775 阅读 · 0 评论 -
Android监听网络状态变化
监听网络状态变化android可以通过监听广播来监听网络状态的变化,在手机网络发生变化时,系统会发送一个广播。下面是实现步骤: 1. 给清单文件添加权限<!-- 获取手机网络权限--> <uses-permission android:name="android.permission.INTERNET" /> <!-- 获取网络状态改变 --> <uses-permission android原创 2017-04-22 15:22:13 · 632 阅读 · 0 评论 -
设置tablayout tab
/** * 利用反射设置tablayout下划线 * * @param tabs * @param leftDip * @param rightDip */ public void setIndicator(TabLayout tabs, int leftDip, int rightDip) { Class<?> t原创 2017-09-19 21:33:19 · 586 阅读 · 0 评论 -
Android6.0 动态权限管理
Android6.0之后,官方将权限分为普通权限和危险权限,危险权限血需要动态设置 #### 危险权限 CAMERA READ_CALENDAR、WRITE_CALENDAR READ_CONTACTS、WRITE_CONTACTS、GET_ACCOUNTS ACCESS_FINE_LOCATION、ACCESS_COARSE_LOCATION READ_AUDIO READ_PHTONE_原创 2018-01-14 20:11:30 · 435 阅读 · 0 评论 -
Android EditText相关
动态设置hint字体大小 // 动态设置hint字体大小 SpannableString spannableString = new SpannableString(getResources().getString(R.string.hint_withdraw_100)); AbsoluteSizeSpan absoluteSizeSpan = new Ab...原创 2018-08-12 10:44:21 · 233 阅读 · 0 评论 -
Android 触摸事件传递
事件传递的三个阶段 分发(dispatchTouchEvent) 返回true表示事件被当前视图消费掉了,不在分发; surper.dispatchTouchEvent表示继续分发该事件; viewGroup及其子类时会调用onInterceptTouchEvent来判断是否拦截该事件 拦截(onInterceptTouchEvent) 只存在 viewGroup及其子类 返...原创 2018-08-12 10:49:12 · 291 阅读 · 0 评论 -
Android Room基本使用方法
添加依赖 implementation "android.arch.persistence.room:runtime:1.1.1" annotationProcessor "android.arch.persistence.room:compiler:1.1.1" entity实体类 @Entity(tableName = "bill") public class Bill {...原创 2018-08-12 21:32:05 · 914 阅读 · 0 评论 -
android aop方式动态权限
注解类: @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) public @interface CheckPermission { String value(); int reqCode(); } 切点: @Aspect public class PermissionAspectj { p...原创 2018-10-10 10:10:19 · 436 阅读 · 0 评论 -
Android Studio调试技巧
1、随时进入调试模式: 菜单----Build---- Attach to Android Process 2、条件断点 右键断点,对断点添加条件,满足的时候才会进入断点 3、日志断点: 断点处右键,取消选中Suspend,勾选Log evaluated Expression,在输入框中输入要答应的内容即 4、分析传入和传出的数据流: Menu----Analyze----Analyze D...原创 2019-09-22 12:09:18 · 253 阅读 · 0 评论
分享