android imagebutton onclick 不改变资源
android imagebutton onclick doesnt change resource
如果布尔值为真,我希望当我点击我的 imagbutton 时改变 3 件事:
- 背景颜色
- 设置编辑文本:可聚焦、可点击
- 背景资源
但只有 背景颜色 有效。资源没有改变,edittext 的 focusable 和 clickable 总是 false
editfirst.setOnClickListener(new View.OnClickListener() {
boolean check;
@Override
public void onClick(View v) {
if (check == true){
editfirst.setBackgroundResource(R.drawable.edit36px);
editfirst.setBackgroundColor(0xFF99b6b3);
editTextfirst.setFocusable(false);
editTextfirst.setClickable(false);
check = false;
}
else if (check == false){
editfirst.setBackgroundResource(R.drawable.done36px);
editfirst.setBackgroundColor(0xFFb2b2b2);
editTextfirst.setFocusable(true);
editTextfirst.setClickable(true);
check = true;
}
}
});
editfirst.setBackgroundResource(R.drawable.edit36px);
editfirst.setBackgroundColor(0xFF99b6b3);
这将首先将背景设置为 edith36px
,然后再次将其替换为颜色 0xFF99b6b3
。
如果您想更改图像按钮上的图像,您必须使用 setImageResource(int id)。
如果你想禁用一个视图,你应该使用 setEnabled(false)
。如果您附加了点击侦听器,我认为将 clickable 设置为 false 是行不通的。
如果布尔值为真,我希望当我点击我的 imagbutton 时改变 3 件事:
- 背景颜色
- 设置编辑文本:可聚焦、可点击
- 背景资源
但只有 背景颜色 有效。资源没有改变,edittext 的 focusable 和 clickable 总是 false
editfirst.setOnClickListener(new View.OnClickListener() {
boolean check;
@Override
public void onClick(View v) {
if (check == true){
editfirst.setBackgroundResource(R.drawable.edit36px);
editfirst.setBackgroundColor(0xFF99b6b3);
editTextfirst.setFocusable(false);
editTextfirst.setClickable(false);
check = false;
}
else if (check == false){
editfirst.setBackgroundResource(R.drawable.done36px);
editfirst.setBackgroundColor(0xFFb2b2b2);
editTextfirst.setFocusable(true);
editTextfirst.setClickable(true);
check = true;
}
}
});
editfirst.setBackgroundResource(R.drawable.edit36px);
editfirst.setBackgroundColor(0xFF99b6b3);
这将首先将背景设置为 edith36px
,然后再次将其替换为颜色 0xFF99b6b3
。
如果您想更改图像按钮上的图像,您必须使用 setImageResource(int id)。
如果你想禁用一个视图,你应该使用 setEnabled(false)
。如果您附加了点击侦听器,我认为将 clickable 设置为 false 是行不通的。