0

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

4

1 回答 1

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

为每个按钮设置一个,你应该已经准备好了。

于 2012-06-22T15:32:46.330 回答