android--google
文章平均质量分 82
CRISTIANO Xusanduo
这个作者很懒,什么都没留下…
展开
-
touchscreen属性与焦点(actionabr/toolbar )
现在越来越多的功能机是采用android系统来做的,因为是按键机,所以有很多地方需要调整。比如本文说的部分机器可能希望,actionbar/toolbar无法获取焦点,觉得按键机有menu建,没必要让actionbar/toolbar上面的menu按钮再获取焦点了。正文:1.google定义:touchscreenframeworks/base/core/res/res/v原创 2017-01-16 10:59:08 · 6880 阅读 · 1 评论 -
鼠标如何在移动的时候根据当前控件变换形状
手机链接蓝牙鼠标后,可以用鼠标操作手机,当鼠标移动到某控件后,它的形状可能从箭头变为小手(文本链接等)。辣么google,如何实现的呢?一、先来看看图片:有好多鼠标的图片。目录随意一个存储图片的目录即可,例如:8trunk/frameworks/base/core/res/res/drawable-mdpi二、主题和属性控制:一步一步来,不急知道google如何原创 2017-11-30 15:57:31 · 1547 阅读 · 4 评论 -
Android studio 引入第三方库(github开源库)
现在github越来越火,也是个人的招牌了。很多很好的公开库,都可以直接使用,可以使自己的app效果更加的炫,还可以缩短开发周期。这里就主要说下,如何导入github上的项目,并如何引用。一开始导入,会遇到挺多问题,也不知道咋处理,慢慢摸索了两天,终于弄好了。一、下载github项目:例子:https://github.com/GrenderG/Toasty ,这是一个toast的开源原创 2018-01-11 15:47:47 · 17934 阅读 · 1 评论 -
Android 布局优化--viewstub标签
性能优化之一就是layout的优化,as 常识:布局是否合理主要影响的是页面测量时间的多少,我们知道一个页面的显示测量和绘制过程都是通过递归来完成的,多叉树遍历的时间与树的高度h有关,其时间复杂度 O(h),如果层级太深,每增加一层则会增加更多的页面显示时间,所以布局的合理性就显得很重要。那布局优化有哪些方法呢,主要通过减少层级、减少测量和绘制时间、提高复用性三个方面入手。总结如下:减少层级。合理...原创 2018-04-10 16:24:20 · 727 阅读 · 0 评论 -
Android 布局优化--merge标签
性能优化之一就是layout的优化,as 常识:布局是否合理主要影响的是页面测量时间的多少,我们知道一个页面的显示测量和绘制过程都是通过递归来完成的,多叉树遍历的时间与树的高度h有关,其时间复杂度 O(h),如果层级太深,每增加一层则会增加更多的页面显示时间,所以布局的合理性就显得很重要。那布局优化有哪些方法呢,主要通过减少层级、减少测量和绘制时间、提高复用性三个方面入手。总结如下:减少层级。合理...原创 2018-04-04 15:37:28 · 1428 阅读 · 0 评论 -
Android 布局优化--include标签
性能优化之一就是layout的优化,as 常识:布局是否合理主要影响的是页面测量时间的多少,我们知道一个页面的显示测量和绘制过程都是通过递归来完成的,多叉树遍历的时间与树的高度h有关,其时间复杂度 O(h),如果层级太深,每增加一层则会增加更多的页面显示时间,所以布局的合理性就显得很重要。那布局优化有哪些方法呢,主要通过减少层级、减少测量和绘制时间、提高复用性三个方面入手。总结如下:减少层级。合理...原创 2018-04-04 16:24:03 · 298 阅读 · 0 评论 -
Android 更改view的index
之前app同事遇到一个问题,需要修改viewgroup中view的节点位置。给提供了一个方法,其实很多时候,这种方法在源码中都能找到的。view树中,都是有节点的,有相应的序号。可能特定需求下,需要动态变更,如何更改呢?private void bringToIndex(View child, int index) { ViewGroup mParent = (ViewGroup) chi...原创 2018-05-21 10:40:59 · 2683 阅读 · 0 评论 -
Androidstudio gradle 插件和 gradle 区别及更新
gradle插件,gradle这是两个名词:Android的构建系统使用Gradle来构建应用.Gradle是一种构建工具,如何来提供这个Gradle构建环境呢?这就需要通过安装Gradle插件来使系统能支持运行Gradle.安装Android Studio后就已经帮我安装了Gradle插件.但Gradle插件是独立于Android Studio运行的,所以它的更新也是与Android Studi...原创 2018-05-22 14:04:00 · 2547 阅读 · 2 评论 -
Android 事件分发
不详细介绍事件分发的流程和逻辑。这里关注一下activity view对于touch/key事件接受处理的先后顺序。既然是activity和view的事件接受顺序,那么只考虑dispatchTouchEvent和onTouchEvent;直接看结果,然后再看why(你总的先看一眼妹子好不好看,然后在去提亲不是)结果是:1.dispatchTouchEvent:activity先响应,view后响应...原创 2018-06-07 09:01:30 · 550 阅读 · 0 评论 -
menu IconMenuView ExpandedMenuView
最忌比较烦,比较烦,比你烦。骂了隔壁的,整个带图menu,为鸡毛的显示出来不带图。。为鸡毛啊???因为主题这个大SB~~~~~~发送menu按键(注意是发送,不时点击),弹出menu,这个menu在整个decorview的最底下,居中显示。这个吊过程时咋整的?为毛显示在最底下?为毛menu的xml里有图片不给我显示?我欠你钱了是吗?一、先看看咋写的demo,是不原创 2017-08-24 15:08:43 · 1333 阅读 · 1 评论 -
你不知道的坑~android原声alerdialog双指触摸必现crash
这个一个坑,安卓原声机可以必现crash。关于详细逻辑,后面再梳理并书写,目前还没梳理完成,细节还很多没有确定的。这里先把主干写一下,免得忘了。后面在逐步进行填充修改,最后本文将呈现一个详细的dispatchTouchEvent的派发逻辑:难点在多点触控,而且你会发现单点触控的逻辑就是小菜一叠。注:本文在完成终稿之前,平均干货,上trace:(末尾)关键函数:1.ViewG原创 2017-07-24 15:17:30 · 560 阅读 · 0 评论 -
onWindowFocusChanged 调用时机
切记:此函数只有在focus为true的时候回调一下app的方法,false的时候不会回调。所以不要通过true/false来做区别处理。一、问题:最近看到google原声的app中在onWindowFoucusChanged的回调中做资源回收:代码中在hasWindowFocus的时候要回收listener。结果,显而易见,TMD出现内存泄漏了。日了狗了,傻逼go原创 2017-08-16 15:15:26 · 6819 阅读 · 0 评论 -
alertdialog button位置潜谈
创建一个alertdialog,在setNegativeButton和setPositiveButton之后,创建出来的dialog的“确定”“取消”,左边是“取消”,右边是“确定”。如下图(android用电脑截图命令:adb shell screencap -p /sdcard/1.png 然后adb pull /sdcard/1.png将图片拉到电脑上)不对其合理原创 2017-01-12 09:29:12 · 5890 阅读 · 0 评论 -
长按编辑框,弹出的的toolbar中的 menu如何add流程
长按文字的时候,会弹出复制粘贴等floattoolbar,这里的menu如何加上去的,长按编辑框在手指抬起时,会弹出。1.touch事件:TextView的touch事件 public boolean onTouchEvent(MotionEvent event) { final int action = event.getActionMasked()原创 2017-01-20 17:02:12 · 1426 阅读 · 0 评论 -
android fw调试 按键派发给谁
在android维护或者开发的时候,经常和应用的同事干仗。原因就是某些测试情况下,按键或者点击没有被相应。app同事说:我草,你大爷,我就没收到,我没法相应。这个时候为了打脸,你就需要在fw添加log,打印的log可以清楚的看到,事件到底派发给谁了。文件view.java中函数 public boolean performClick() { sendAcc原创 2017-02-15 13:53:04 · 631 阅读 · 0 评论 -
android focus查找派发全解析
focus只有两个点:1.刚启动activity时,焦点默认在哪里,为什么在那里?2.上下按键,焦点如何查找的,它怎么知道下一个获取焦点的是谁?其中2只是针对键盘即key事件,touch事件则直接是皇统继承,点谁是谁。一、启动activity时,焦点默认行为:首先是wms进行setview,将decorView添加进来,此时viewRootImpl中保存了decorView。原创 2017-03-06 16:26:33 · 2989 阅读 · 0 评论 -
android focus查找 方向键如何查找focus
上一篇文章提到了,新起的activity中的某个view是如何获取焦点的。这篇介绍一下,当在一个界面,按下方向键,焦点是如何查找的。即第一篇文章中跑出来的问题:2.上下按键,焦点如何查找的,它怎么知道下一个获取焦点的是谁?先总的说一下原理:新起一个界面的时候,会找到一个获取焦点的view(这个view可能是group或者最小的view),当按下方向键时,会进行遍历,根据方向,遍历这一方向布原创 2017-03-08 16:30:30 · 4489 阅读 · 0 评论 -
如何给google提交code -- 原声问题修改如何提交到google gerrit上
有些原声问题,修改了,可以把code提交给google,进了google的代码库,666.主要介绍如何下载分支,如何进行git commit,及提交1.申请一个帐号。2.clone一个分支到本地:a.需要添加代理,本x公司的代理添加后b.cd到目录下,开始clone原声的分支git clone https://android.googlesource.com/p原创 2016-11-29 11:22:13 · 994 阅读 · 0 评论 -
layout layout-large dpi 分辨率 系统加载影响
手机屏幕大小不一,这也就需要不同的布局资源来对不同屏幕进行适配,小屏用小屏的布局,大屏用大屏的布局。那么系统如何区分大小屏,确定大小屏后,哪些参数又会影响布局的加载呢?api上讲的比较详细,我们摘出其中一部分,并进行深入剖析。API地址:点击打开链接在阅读正文之前,需要基础的知识:dp、dpi、px、分辨率这四个基本概念。什么,屏幕大小、dp、dpi的概念还不知道,辣么,叔告诉你,你该原创 2017-05-19 11:48:59 · 1438 阅读 · 0 评论 -
android dp sp px dpi dip density 之水落石出
android显示的一些单位density dpi dp(dip) sp px及分辨率的概念,对于这些单位,还在一头雾水?Come On,就是这篇文章了。这里为了防止每个概念都是动态的,我们把px固定,即出厂了的屏幕的像素点不会变了。(屏幕像素点大小:同样的5寸屏幕,垃圾屏的像素点大,显示模糊;好屏的像素点小,显示精细)。后面分析的前提条件都是同一块手机屏幕,px是一个定值。放大后原创 2017-05-18 17:30:37 · 1323 阅读 · 0 评论 -
Android LowMemoryKiller相关
相关名词:关键名词:adj、minfree此关键名词:oom_score、oom_score_adj、oom_adj内存相关:total、free、used、lost、VSS、RSS、PSS、USS这里不讲解adj与lmk水位相关基础知识,重点在:如果不适用google的配置策略,如何使用自定义的水位的方法。google的策略就是根据实际内存及屏幕尺寸来计算lmk的水位,一般够...原创 2018-07-24 11:41:22 · 1654 阅读 · 0 评论