我试图这样做,当用户专注于文本视图时,背景会改变颜色,然后当它失去焦点时,textview会失去焦点颜色。你能帮忙吗?
TextView tv1=new TextView(this);
tv1.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if(hasFocus){
v.setBackgroundColor(Color.RED);
}else{
v.setBackgroundColor(Color.TRANSPARENT);
}
}
});
答案 0 :(得分:2)
要默认textView不可点击且可对焦,则需要进行设置。
试试这个。
tv1.setClickable(true);
tv1.setFocusableInTouchMode(true);
答案 1 :(得分:0)
你的代码没问题,唯一的问题是第一行新的TextView(this)不是创建TextView的最佳方法,首先在xml中创建它并从你的java代码中调用它像这样:
EditText tv1 = (EditText) findViewById(R.id.my_textViewId);
其余代码效果很好。
希望它有所帮助。