Android学习

2018-01-24  本文已影响6人  夺光

1、onInterceptTouchEvent方法是探测方法,探测当前viewgroup是否处理这个touch事件,如果处理就返回true,就由当前view来处理了,如果返回false,就要把这个时间继续向下传递,由child view 的onInterceptTouchEvent来判断是否需要处理,

2、onTouchEvent是响应touch事件的方法,由父视图传递给子视图,返回true就是我要处理,不会返回给父视图,如果返回false就代表着,我处理不了,返回上一层的onTouchEvent。总结一下就是onInterceptTouchEvent探测是按照视图树根向叶子传递的,如果你能处理你就返回true,我就不继续往下面的节点传了,而onTouchEvent是由树叶开始逐层去确认由哪个节点去响应touch事件,如果返回true就是我能处理,不必往上传了,如果false呢,就说明我处理不了,我要把这个touch时间告诉父视图。

3、mInflater.inflate(R.layout.adv_viewpager, root, false)  如果不传root,那么就无所谓,不会应用最外层的layout属性(因为layout只能在有父视图的情况下才会有效),如果root非空并且第三个参数是true,那就直接添加到root上,那么现在就好了,layout属性都管用了,如果第三个参数是false,那么咱们就不往root上加,但是把layout属性都取到了,等到添加到父视图的时候,就可以快乐应用这些layout属性了。true:并且root存在,将xml挂载到root下,返回root    false:返回xml的根布局

4、layer alpha混合规则 如果新建layer上面某个像素的Alpha分量为255,即该像素完全不透明,那么Android会直接用该像素的ARGB值作为Canvas对应位置上像素的颜色值。如果新建layer上面某个像素的Alpha分量为0,即该像素完全透明,在本例中Alpha分量为0的像素,其RGB分量也都为0,那么Android会保留Canvas对应位置上像素的颜色值。

5、Android内存泄漏的几种情况:静态量持有大量内存。匿名/内部类隐式的引用外部的引用。资源使用完了没有关闭。

上一篇下一篇

猜你喜欢

热点阅读