
android_基础
瑞逸
新时代的开山怪
展开
-
参数限制实现方式
public static void test(){ Bean bean = new Bean(); bean.setTypeI(value1); bean.setTypeE(ModeEnum.value1);}//valuepublic static final int value1 = 1;public static final int value2 = 2;public static final int value3 = 3;//注解方式@IntDef(f.原创 2020-09-25 10:09:07 · 200 阅读 · 0 评论 -
APT的流程记录
APT:Annotation Processing Tool,即注解处理器1.apt-annotation:定义注解2.apt-processor:处理注解,生成代码(AbstractProcessor-javapoet):apply13.apt-util:调用processor生成的代码(反射调用):apply14.app:主项目:apply123...原创 2020-08-16 15:28:29 · 253 阅读 · 0 评论 -
记录一次完整的消息流程
1)Looper.prepare(); 1. new Looper() : Looper生成MessageQueue,指定Thread 2.ThreadLocal.set(Looper)2)new Handler() 1.Handler中指定Looper,MessageQueue(Looper是指定线程对应的,MessageQueue是得到Looper中的)3)发送message 流程 Handler.enqueueMessage-> MessageQueu...原创 2020-08-13 11:33:38 · 133 阅读 · 0 评论 -
记录getPackageInfo的流程探索
起源PackageInfo packageInfo = getPackageManager().getPackageInfo();getPackageManager: ContextWrapper:mBase->Context->ActivityPackageManager->ApplicationPackageManager:getPackageInfo-getPackageInfoAsUser->mPM(IPackageManager:aidl实现)IPackag原创 2020-08-11 11:38:38 · 1179 阅读 · 0 评论 -
View.onTouchEvent
public boolean onTouchEvent(MotionEvent event) { //获取基本信息(没考虑多点,仅考虑单点) 坐标&action final float x = event.getX(); final float y = event.getY(); final int viewFlags = mViewFlags; final int action = event.getAction(); //判断是否可点击,长.原创 2020-07-08 18:35:50 · 270 阅读 · 0 评论 -
3次握手,4次挥手
上图包括三个部分:建立连接,数据传输,断开连接第一次握手:客户端发送syn包(seq = x)到服务器,并进入SYN_SENT状态,等待服务器确认;第二次握手:服务器收到syn包,必须确认客户的SYN(ack = x+1),同时自己也发送一个SYN包(seq = y),即SYN+ACK包,此时服务器进入SYN_RECV状态;第三次握手:客户端收到服务器的SYN+ACK包,向服务器确认包AC...原创 2020-05-08 09:40:25 · 222 阅读 · 0 评论 -
ConstraintLayout
ConstraintLayout1.Relative positioninglayout_constraintLeft_toLeftOf 我的左侧与你的左侧对齐layout_constraintLeft_toRightOf 我的左侧与你的右侧对齐layout_constraintRight_toLeftOf 我的右侧与你的左侧对齐layout_constraintR...原创 2020-04-22 13:34:13 · 196 阅读 · 0 评论 -
版本适配记录
1.4.1 Apache HTTP 客户端弃用影响采用非标准 ClassLoader 的应用其实,自 Android 6 发布,就移除了对 Apache HTTP 客户端的支持,而推荐改用 HttpURLConnection 类,因为它可以通过透明压缩和响应缓存减少网络使用,并可最大限度降低耗电量, 从此我们变习惯这样使用 Apache HTTP API,即在 build.geadle 添加:...原创 2019-07-20 16:40:09 · 140 阅读 · 0 评论 -
Android事件分发机制
转载 2018-04-16 14:11:42 · 197 阅读 · 1 评论 -
CardView 属性
原创 2018-01-24 15:54:31 · 218 阅读 · 0 评论 -
android 全屏显示
android 设置全屏显示原创 2017-11-01 10:27:25 · 301 阅读 · 0 评论 -
初试注解 自定义实现FindViewById
android 注解 小试原创 2017-08-10 12:03:17 · 443 阅读 · 0 评论 -
关于View Measure 的 MeasureSpec的mode 思考
View测量时 的 MeasureSpec的mode 思考原创 2017-08-17 12:05:16 · 431 阅读 · 0 评论 -
GestureDetector_OnGestureListener
android 中的手势OnGestureListener原创 2016-06-22 14:38:09 · 489 阅读 · 0 评论 -
GestureDetector_OnDoubleTapListener
android 手势setOnDoubleTapListener原创 2016-06-22 14:53:54 · 2487 阅读 · 0 评论 -
GestureDetector_SimpleOnGestureListener
android 手势SimpleOnGestureListener原创 2016-06-22 15:07:05 · 582 阅读 · 0 评论 -
ScaleGestureDetector_OnScaleGestureListener,SimpleOnScaleGestureListener
android ScaleGestureDetector原创 2016-06-22 15:14:49 · 2105 阅读 · 0 评论 -
android资源文件(assets and raw) 的读写
android raw assets资源的操作原创 2016-07-08 16:22:51 · 566 阅读 · 0 评论 -
ScrollView是否滑动到底部
判断scrollView是否滑动到底部原创 2016-08-04 11:52:48 · 1208 阅读 · 0 评论 -
RelativeLayout 属性含义
android RelativeLayout 的属性介绍原创 2016-07-21 18:30:43 · 730 阅读 · 0 评论 -
数据存储总结
android 数据存储总结原创 2016-09-18 17:03:30 · 383 阅读 · 0 评论 -
IntentFilter与隐式Intent
y原创 2017-03-06 17:13:47 · 328 阅读 · 0 评论 -
角度 弧度的转换
由数学关系已知 360度 = 2π弧度 => 180度 = π* 弧度 可证得 一: 1度 = (π * 弧度)/180 = 弧度/60 => 度= 弧度*(π/180) 即 60度 = 弧度*(60*π/180) 可证得二:1弧度= 180/π = 60度 => 弧度= 度*(180/π) 即 60弧度 = 度*(180/π)例 1 : cos(3原创 2017-05-10 16:12:58 · 927 阅读 · 0 评论 -
png与jpg 格式的比较
android jpg和png的区别原创 2016-06-03 17:51:28 · 890 阅读 · 0 评论