琐碎知识点

1.自定义控件时,可以通过TypedArray attrs获取布局文件中设置的属性值。再获取某一条属性值前,可以通过attrs.hasValue(R.styleable.属性名)判断是否包含该属性。
代码示例:

if (attrs.hasValue(R.styleable.PullToRefresh_ptrHeaderTextColor)) {   
    ColorStateList colors = attrs.getColorStateList(R.styleable.PullToRefresh_ptrHeaderTextColor);
    if (null != colors) {      
        setTextColor(colors);   
    }
}```
2.获取第一个可见子View

public int getFirstVisibleItemPosition() {
if (mLinearLayout == null) {
return 0;
}
//获取小图标的数量
int size = mLinearLayout.getChildCount();
for (int i = 0; i < size; i++) {
View view = mLinearLayout.getChildAt(i);
//当出现小图标的x轴比当前ScrollView的x轴大时,这个小图标就是当前可见的第一个
if (getScrollX() < view.getX() + mItemWidth / 2.0F)
return i;
}
return 0;
}


3.Library Module中不能使用Switch方式操作resouce id。因为在SDK tools r14之后这些id是non final的,要操作需要使用if-else,AS中有快捷键转换。


持续更新ing!!!
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 调用下面的方法,得到的返回值是什么? 代码在走到第 3 行的时候遇到了一个 MathException,这时第四行...
    某学渣阅读 566评论 0 1
  • 1、使用动画切换window的根控制器 2、KVO高级用法 适用于NSArray,可以实现对数据元素的求和、最大值...
    半边枫叶阅读 1,347评论 3 3
  • 一、线程安全 线程安全概念:当多个线程访问同一个类(对象或方法)时。这个类始终都能表现出正确的行为,那么这个类(对...
    FlySheep_ly阅读 223评论 0 1
  • 1、android 读取Bitmap的几种方式 1.以文件流的方式,假设在sdcard下有 test.png图片 ...
    tenny_wu阅读 381评论 0 0
  • 《一》 雪菜豆腐味道香, 半年没吃想的慌。 先煎后炒忒漂亮, 仿佛厨艺还挺强。 《二》 人到中年不宜瘦, 今天得吃...
    黛眉居阅读 758评论 27 16