0
点赞
收藏
分享

微信扫一扫

修改EditText背景和光标

勇敢的趙迦禾 2022-02-27 阅读 99


背景

安卓原生的EditText样式不太好看(光标和背景),不同的项目都需要定制。

修改EditText背景和光标_ico

解决方案

  1. 最优方案
    设置主题中colorAccent的颜色,即可改变EditText光标和背景颜色。
    如果不能改变application主题颜色,也可以单独针对指定的activity设定主题。
    样例:
    1). Manifest文件中application配置主题
<application
android:allowBackup="false"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">

2). styles.xml中修改colorAccent对应颜色即可。

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>

效果图:

修改EditText背景和光标_ico_02

  1. 次选方案
    如果不能修改主题,要单独定制某个EditText的光标和背景。可以通过设置android:background(背景)、android:textCursorDrawable(光标颜色)和android:textSelectHandle(焦点选择图标)
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="2.定制光标、聚焦选择图标和背景(优选方案)"
android:background="@drawable/edit_text_bg"
android:textSelectHandle="@mipmap/edit_text_select"
android:textCursorDrawable="@drawable/edit_text_cursor"/>

效果图:同上

参考代码完整demo:https://gitee.com/cxyzy1/editTextCursorColorDemo


举报

相关推荐

0 条评论