怎么实现对edittext边框弄颜色 Android studio
时间: 2024-11-20 09:42:15 浏览: 14
Android EditText设置密码是否可见
在Android Studio中,要为`EditText`控件添加自定义边框并改变其颜色,你可以使用XML布局文件和主题或风格(styles.xml)来定制。以下是步骤:
1. **XML布局文件**:
在`res/layout`目录下,编辑包含`EditText`的布局文件,如`activity_main.xml`。添加一个`styleable`属性到`EditText`标签,然后指定边框宽度、样式和颜色:
```xml
<EditText
android:id="@+id/edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@null" <!-- 清除默认背景 -->
android:textColorHint="@color/color_border_hint" <!-- 边框颜色 -->
app:borderWidth="1dp" <!-- 边框宽度 -->
app:borderColor="?android:textColorPrimary" <!-- 设置边框颜色 -->
app:cornerRadius="4dp" <!-- 圆角,可选 -->
/>
```
上述代码中,`borderColor`使用了系统颜色`?android:textColorPrimary`,这会根据你的主题自动调整。
2. **主题或风格**:
在`res/values/styles.xml`或`res/values-v21/styles.xml`(针对API级别21及以上)中,创建一个新的主题或继承现有的主题,并设置`textColorPrimary`和`android:windowBackground`属性来影响`EditText`的边框颜色:
```xml
<!-- colors.xml (if not already present) -->
<color name="color_border_hint">#FF0000</color> <!-- 修改为你想要的颜色 -->
<!-- styles.xml 或 v21/styles.xml -->
<style name="MyCustomTheme">
<!-- 更改textColorPrimary来匹配你的需求 -->
<item name="android:textColorPrimary">@color/color_border_hint</item>
<!-- 透明窗口背景以便看到边框 -->
<item name="android:windowBackground">@android:color/transparent</item>
</style>
```
现在,当你在应用中使用`<EditText style="@style/MyCustomTheme">...</EditText>`,边框将会显示为设置的颜色。
阅读全文