Android:突出显示按钮,直到按下其他按钮

时间:2012-06-22 14:51:15

标签: android android-layout button

我的布局中有4个按钮 - 它们是4个可能的View内容之间的切换器。每当按下其中一个按钮时,我需要突出显示它(只需加载其他背景,其他图像并更改文本的颜色)。麻烦的是,我需要从触摸按钮的那一刻开始(不是点击之后)直到按下其他按钮。简单地使用onClick()方法不会很好,因为我必须检查其他按钮是否已经突出显示,并且只有在点击后才会进行更改。对此有什么好的解决方案吗?

1 个答案:

答案 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
        }
    }
});

为每个按钮设置一个,你应该全部设置。