Android 分享
分享Android 相关的知识,总结开发过程中的经验
fsilence璐豪
W --- winL --- learnH --- heart
公众号:CoderHouse
欢迎投递简历到快手 https://zhaopin.kuaishou.cn/recruit/e/#/official/social/?workLocationCode=domestic
内推 请邮件 weiluhao@kuaishou.com 附上简历和职位链接
展开
-
扩大View的点击区域
TouchDelegate可以通过设置TouchDelegate 给View的父类来实现点击事件的区域扩充(拦截父View的Touch事件) View child; ViewGroup parent; // 上下左右各扩充10px的点击范围 int sizeDifference = 10; Rect delegateArea = new Rect(); delegateArea.right += sizeDifference; delegateArea.bott原创 2020-07-03 15:34:27 · 575 阅读 · 0 评论 -
RecyclerView中关于UpdateOp的Reorder
大纲: 1. 关于UpdateOp的重新排序2. 对于各类操作移动转换的处理处理方式是将所有的move操作都移动到操作列表的最后,用来合并处理前面有相互交叉的操作。向前依次找到第一个是Move 且 下一个不是Move操作的,然后尝试将Move操作向后移动一位。直到所有的Move操作都被沉到列表的末尾关于Remove操作的交换注意 Remove 类型的UpdateOp 的itemCount 表示要移动到的位置而非移动的个数, Remove操作暂时只支持一次移动一个思想查找移动后move的操原创 2020-05-16 11:25:42 · 289 阅读 · 0 评论 -
RecyclerView ChildHelper源码
大纲: 1. ChildHelper的职责2. hidden的处理方式2. 关于Bucket的位计算概述ChildHelper帮助处理RecyclerView中的View的辅助类。 RecyclerView中的childern被分成了2类一类是当前正在使用可见的,一类是hidden的。ChildHelper提供了2类方法,一类获取getChildCount等,一类是Unfilter的方法 例如getUnfilterChildCount , 区别是getChildCount返回当前可见的View的原创 2020-05-11 20:27:31 · 248 阅读 · 0 评论 -
IPC之AIDL(2)in out inout
内容大纲: 1.在AIDL的时候正确使用in out inout上一篇我们用AIDL简单实现了一个IPC,其中我们谈到在定义aidl接口中的除基本类型和AIDL接口外的参数要调价修饰符in out 或 inout中的一种,本文将帮助大家理解in out inout,并让读者可以正确的使用in out inout。 在介绍in out inout的区别之前我们先明确两个基本概念:起点 和 终点,原创 2016-09-20 17:08:41 · 1132 阅读 · 0 评论 -
Android 事件分发一
Android 事件分发一Android事件分发是每一个Android程序员都应该烂熟于心的内容。本文将对Android的时间分发做一个整体(不涉及系统源码)描述。原创 2016-08-09 11:57:59 · 326 阅读 · 0 评论 -
WindowSoftInputMode
在activity的配置文件中 添加stateHidden :原创 2014-05-19 17:59:26 · 761 阅读 · 0 评论 -
Android listview垂直滑动指定距离
在写自动化代码的时候对于listview的拖动有时候效果不尽人意,例如robotium自带的滚动操作scrollListToLine,最终的核心就是:inst.runOnMainSync(new Runnable(){ public void run(){ view.setSelection(lineToMoveTo); } });那么也转载 2014-07-24 17:17:47 · 3291 阅读 · 4 评论 -
getMeasuredHeight 和 getHeight
转于:http://blog.csdn.net/chongshi007/article/details/8985063实际上在当屏幕可以包裹内容的时候,他们的值相等,只有当view超出屏幕后,才能看出他们的区别:getMeasuredHeight()是实际View的大小,与屏幕无关,而getHeight的大小此时则是屏幕的大小。当转载 2014-07-30 17:24:39 · 3906 阅读 · 0 评论 -
ScrollView的dispatchTouchEvent截取时遇到的问题
public boolean dispatchTouchEvent(MotionEvent ev) { switch (ev.getActionMasked()) { case MotionEvent.ACTION_DOWN : doublePointer = false; onTouchEvent(ev);原创 2014-07-31 16:20:11 · 2143 阅读 · 0 评论 -
代码中setProgressDrawable
在Android代码中直接调用setProgressDrawable不好用,应为get Drawable draw = getResources().getDrawable(R.drawable.errorprogressbar); draw.setBounds(progressBar.getProgressDrawab原创 2014-08-13 14:07:25 · 9677 阅读 · 6 评论 -
Android事件分发二
Android事件分发二上一篇我们介绍了通常情况下的事件分发,下面我们来看一看在FrameLayout 两个View重叠后的时间分发情况。原创 2016-08-11 16:35:53 · 468 阅读 · 0 评论 -
各级别dpi的值
hdpi: 240 , ldpi: 120 , mdpi: 160 , xhdpi: 320转载 2014-09-03 14:04:09 · 2833 阅读 · 0 评论 -
从ant到gradle
从ant到gradle本人前段时间完成了打包工具从ant到gradle的过度,本文主要阐述在迁移过程中项目遇到的一些坑以及解决方案,并不会详细阐述整个过程(一般除非使用了插件话等,否则参考下边的关于gradle的文章足以)。关于gradle关于gradle本文不做讨论 可以参考:http://blog.csdn.net/innost/article/details/48228651 项目背景我们的原创 2016-04-22 14:42:38 · 3971 阅读 · 0 评论 -
Android面试知识树
最近总结了下初中级Android工程师在面试过程中常常被问到的知识点,做了张图,当然没有正确答案了,只是给大家提供一个面试前的复习大纲原创 2016-08-12 10:45:56 · 673 阅读 · 0 评论 -
Android 实现2个ListView垂直排列
思路: 用ExpandableListView实现,在onCreate()中展开所有的groupView 并且屏蔽调收起事件。Adapter的实现:public class TestAdapter extends BaseExpandableListAdapter {private Context context;private List list1;private List原创 2014-02-14 16:22:38 · 4889 阅读 · 0 评论 -
善用adb
善用adb内容大纲: 1.什么是ADB 2.安装adb 3.ADB常用命令 4.善用ADB 什么是adbadb全称Android Debug Bridge, 通过ADB我们可以在电脑上操控手机的一些行为 安装adbadb存在于sdk\platform-tools,你只需要在环境变量path中配置上就可以在命令行或AS自带的Terminal中使用 adb常用命令下面只对常用命令做一个描述原创 2016-08-15 15:56:22 · 368 阅读 · 0 评论 -
IPC概述
摘要:1.什么是IPC2.android实现IPC的几种方式原创 2016-09-12 20:45:39 · 656 阅读 · 0 评论 -
IPC之AIDL(1)实现AIDL
使用AIDL实现IPC原创 2016-09-18 11:13:02 · 372 阅读 · 0 评论 -
IPC之Messenger
内容大纲:1.学会使用Messenger进行进程间通信 在进行具体的探讨之前,我们先明确2个基本概念客户端和服务端。在本例中客户端是指发起处理请求的进程(app的主进程), 服务端(service端)指一个另外一个提供服务的进程(主要是指service)。Messenger可以理解为信使,它可以实现消息的发送,底层使用Binder实现的(所以可以跨进程)。我们来看Messenger的构造函数:原创 2016-09-13 11:09:52 · 308 阅读 · 0 评论