不知不觉做安卓也有一段时间了,虽然已跨越了入行水平,开发起金融类的APP不算难,但还是觉得没学到什么新的知识,除了金融类的APP,其他知识点接触得少,如直播、车载、地图、智能家居等。觉得这样下去不行,只会虚度光阴。身边的死党们都比我早入行三四年,感觉他们也是无目的的开发、再开发、再开发。觉得这不是我想要的生活。其次总感觉个人水平步入不了初级水平。希望通过现在记录自己的点点滴滴,让自己更明确自己的路。同时也更进一步提高。
此篇为个人日常解决BUG记录(不断修正)
————————————————————————————————————————————
软键盘
1、 问题:每次跳转到某界面,EditText自动获取到了焦点,软键盘默认弹出;解决:初始化时,调用
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
相关知识:(来源:网络截取)
1】stateUnspecified 软键盘的状态并没有指定,系统将选择一个合适的状态或依赖于主题的设置
2】stateUnchanged 当这个activity出现时,软键盘将一直保持在上一个activity里的状态,无论是隐藏还是显示
3】stateHidden 用户选择activity时,软键盘总是被隐藏
4】stateAlwaysHidden 当该Activity主窗口获取焦点时,软键盘也总是被隐藏的
5】stateVisible 软键盘通常是可见的
6】stateAlwaysVisible 用户选择activity时,软键盘总是显示的状态
7】adjustUnspecified 默认设置,通常由系统自行决定是隐藏还是显示
8】adjustResize 该Activity总是调整屏幕的大小以便留出软键盘的空间
9】adjustPan 当前窗口的内容将自动移动以便当前焦点从不被键盘覆盖和用户能总是看到输入内容的部分!
相关链接:
1】http://blog.csdn.net/twoicewoo/article/details/7384398
————————————————————————————————————————————
EditText
1、 问题:光标消失、不显示(原因:背景颜色与光标颜色相似或相同)
解决: android:textCursorDrawable="@null";如此设置则默认与文本颜色相同
android:cursorVisible="true" 设置显示光标
————————————————————————————————————————————
TextView
属性:1】android:drawablePadding 设置text与drawble间距;
2】android:drawableTop 设置TextView 顶部drawble
1、 问题:真机测试时,某些真机会显示不出字体
解决:直接设置android:textColor
————————————————————————————————————————————
res-values-string 引用string数组
第一步:string.xml文件中
<string-array name="home_list_detail_repayment_type">
<item>还款方式:按天到期还款</item>
<item>还款方式:按月分期还款</item>
<item>还款方式:按季分期</item>
<item>还款方式:先息后本</item>
</string-array>
第二步:代码中
Resources res = getResources();
String[] stringArray= res.getStringArray(R.array.home_list_detail_repayment_type);
备注:尝试过两段代码写在一起,会报null;
————————————————————————————————————————————
选择器selector
1、 问题:选择器引用color报错
<item android:color="#fff" android:state_pressed="true" />
解决: <item android:drawable="@color/mine_tabs_bg_blue" android:state_pressed="true" />
相关链接:
1】http://blog.sina.com.cn/s/blog_71068bbb0101kzjr.html
————————————————————————————————————————————
ListView
1、 问题:自定义百分比圆形进度条,绘图错乱,导致不正确的进度
解决:invalidate()替代postInvalidate();
invalidate()需要用单线程加锁按序执行
————————————————————————————————————————————
Fragment
1、 问题:当Fragment切换不同时,需要改变高度
解决:在Fragment重写代码如下
@Override public void setMenuVisibility(boolean menuVisible) { super.setMenuVisibility(menuVisible); if (this.getView() != null) this.getView().setVisibility(menuVisible ? View.VISIBLE : View.GONE); }