我的布局中有4个按钮 - 它们是4个可能的View内容之间的切换器。每当按下其中一个按钮时,我需要突出显示它(只需加载其他背景,其他图像并更改文本的颜色)。麻烦的是,我需要从触摸按钮的那一刻开始(不是点击之后)直到按下其他按钮。简单地使用onClick()方法不会很好,因为我必须检查其他按钮是否已经突出显示,并且只有在点击后才会进行更改。对此有什么好的解决方案吗?
答案 0 :(得分:1)
onFocusChange
听众怎么样?
button.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if (hasFocus) {
// set the background, image and color for focused
} else {
// set the background, image and color back to normnal
}
}
});
为每个按钮设置一个,你应该全部设置。