启用 EditText 下划线
Enable EditText underline
默认情况下 EditText
有下划线。我想在禁用 Edittext
的情况下启动我的程序,当有人点击图标时,EditText
被启用。
这是一张显示“to...”的图片EditText
没有下划线,而其他人有下划线,而有焦点的图片使用强调色。
我试过的代码:
foodIconButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
foodCurrentEditText.setEnabled(true);
foodDesiredEditText.setEnabled(true);
foodDesiredEditText.setFocusable(true);
foodDesiredEditText.setBackgroundColor(Color.TRANSPARENT);
//foodDesiredEditText.setBackgroundTintList(ColorStateList.valueOf(Color.parseColor("#03DAC5")));
//MyDrawableCompat.setColorFilter(foodDesiredEditText.getBackground(), ContextCompat.getColor(MainActivity.this, R.color.colorAccent));
foodDesiredEditText.getBackground().setColorFilter(ContextCompat.getColor(MainActivity.this, R.color.colorAccent), PorterDuff.Mode.SRC_IN);
}
});
最后 3 行代码是我根据此处其他问题的建议尝试的不同方法。
如果你想隐藏和显示EditText
的下划线,你可以这样做:
隐藏行:
ColorStateList colorStateList = ColorStateList.valueOf(Color.TRANSPARENT);
ViewCompat.setBackgroundTintList(foodDesiredEditText, colorStateList);
显示行:
ColorStateList colorStateList = ColorStateList.valueOf(ContextCompat.getColor(applicationContext, R.color.colorAccent));
ViewCompat.setBackgroundTintList(foodDesiredEditText, colorStateList);
如果您使用 androidx
,更好的解决方案是:
隐藏行:
foodDesiredEditText.setBackgroundResource(0);
显示行:
foodDesiredEditText.setBackgroundResource(androidx.appcompat.R.drawable.abc_edit_text_material);
默认情况下 EditText
有下划线。我想在禁用 Edittext
的情况下启动我的程序,当有人点击图标时,EditText
被启用。
这是一张显示“to...”的图片EditText
没有下划线,而其他人有下划线,而有焦点的图片使用强调色。
我试过的代码:
foodIconButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
foodCurrentEditText.setEnabled(true);
foodDesiredEditText.setEnabled(true);
foodDesiredEditText.setFocusable(true);
foodDesiredEditText.setBackgroundColor(Color.TRANSPARENT);
//foodDesiredEditText.setBackgroundTintList(ColorStateList.valueOf(Color.parseColor("#03DAC5")));
//MyDrawableCompat.setColorFilter(foodDesiredEditText.getBackground(), ContextCompat.getColor(MainActivity.this, R.color.colorAccent));
foodDesiredEditText.getBackground().setColorFilter(ContextCompat.getColor(MainActivity.this, R.color.colorAccent), PorterDuff.Mode.SRC_IN);
}
});
最后 3 行代码是我根据此处其他问题的建议尝试的不同方法。
如果你想隐藏和显示EditText
的下划线,你可以这样做:
隐藏行:
ColorStateList colorStateList = ColorStateList.valueOf(Color.TRANSPARENT);
ViewCompat.setBackgroundTintList(foodDesiredEditText, colorStateList);
显示行:
ColorStateList colorStateList = ColorStateList.valueOf(ContextCompat.getColor(applicationContext, R.color.colorAccent));
ViewCompat.setBackgroundTintList(foodDesiredEditText, colorStateList);
如果您使用 androidx
,更好的解决方案是:
隐藏行:
foodDesiredEditText.setBackgroundResource(0);
显示行:
foodDesiredEditText.setBackgroundResource(androidx.appcompat.R.drawable.abc_edit_text_material);