在聚焦时隐藏EditText的下划线颜色,可以通过修改EditText的样式来实现。具体步骤如下:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="EditTextStyle" parent="Widget.AppCompat.EditText">
<item name="colorControlNormal">@android:color/transparent</item>
<item name="colorControlActivated">@android:color/transparent</item>
<item name="colorControlHighlight">@android:color/transparent</item>
</style>
</resources>
<EditText
android:id="@+id/editText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/EditTextStyle" />
EditText editText = findViewById(R.id.editText);
editText.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if (hasFocus) {
editText.setBackgroundResource(android.R.color.transparent);
} else {
editText.setBackgroundResource(R.drawable.edittext_background); // 设置EditText的背景
}
}
});
通过以上步骤,当EditText获得焦点时,其下划线颜色将变为透明,失去焦点时恢复原来的样式。
注意:以上代码中的"edittext_background"是一个自定义的背景资源,你可以根据自己的需求来设置。
领取专属 10元无门槛券
手把手带您无忧上云