日常使用的样式有关的xml小记
1. shape_border_top_bottom.xml。可以用于toolbar,使其上下有一个分割的border。
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- item 的top left right bottom 相当于margin 设置不需要的边为负值 -->
<item
android:left="-1dp"
android:right="-1dp">
<shape>
<!-- 边框颜色 -->
<stroke
android:width="1dp"
android:color="@color/c_CCCCCC"/>
<solid android:color="@color/white"/>
</shape>
</item>
</layer-list>
2.selector_login_password_show_btn.xml。用于如密码框的那个眼睛的状态切换。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="false" android:drawable="@mipmap/yj2"></item>
<item android:state_selected="true" android:drawable="@mipmap/yj"></item>
</selector>
用法:
<ImageView
android:id="@+id/eye"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="center"
android:paddingRight="@dimen/login_input_eyes_right"
android:src="@drawable/selector_login_password_show_btn" />
通过设置boolean类型的值,来控制密码框的那个眼睛的状态
case R.id.eye: //密码按钮
eye.setSelected(!isShowPs);
password.setInputType(isShowPs ? InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD : InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
isShowPs = !isShowPs;
break;
3.shape_btn_border_normal.xml。如何使控件带有圆角。
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/c_3DACA5" />
<corners android:radius="2dp" />
<padding
android:left="5dp"
android:top="2dp"
android:right="5dp"
android:bottom="2dp" />
</shape>
4.设置EditText焦点光标的颜色
- 新建xml文件:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/c_999999"/>
<size android:width="1dp"/>
</shape>
然后使用在EditText上:
android:textCursorDrawable="@drawable/shape_text_cursor_drawable"
- 也可以修改style.xml文件中的AppTheme中的item如下:
<item name="colorAccent">@color/colorAccent</item>