接着上篇继续写,直到上篇结束后效果是这样滴。
先解决光标的样式,一般情况下,光标默认是黑色的。哪有没有办法给光标设置颜色呢,或者在给光标设置粗细?
方法肯定是有滴,在EditText中有一个textCursorDrawable属性,只需要对它进行修改就行了。
设置光标的颜色和粗细
第一种:设置为@null,意思就是说让光标颜色和text color 的颜色一样。
android:textCursorDrawable="@null"
android:textCursorDrawable="@drawable/color_cursor"color_cursor.xml 文件如下:
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <size android:width="4dp" /> <solid android:color="#FF0033" /></shape>
效果如下 :
其中android:shape="rectangle" 和默认不写效果是一样的,有4个属性,每种属性都 可以改变光标的样式。
设置hint的颜色和大小
先是设置大小,设置大小在对象中正好有该方法。searchText.setHintTextColor(fontColor);
不过它需要一个CharSequence的对象,我这里就只写解决方法了,具体的详细可以去看看这篇博客,写得很详细:
http://blog.csdn.net/lixin84915/article/details/8110667
http://jiangnane.com/index.php/archives/1202
方法如下:
CharSequence hint = searchText.getHint();
SpannableString ss = new SpannableString(hint);
AbsoluteSizeSpan ass = new AbsoluteSizeSpan(fontSize, true);
searchText.setHintTextColor(fontColor);
ss.setSpan(ass, 0, ss.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
searchText.setHint(new SpannedString(ss));