Android 是什么使按钮切换并保持单击时的颜色?

Android 是什么使按钮切换并保持单击时的颜色?,android,android-layout,Android,Android Layout,我想创建一个行为类似于开关的按钮 当用户点击它时,它应该改变颜色,并保持颜色不变 因此,按钮最初是白色的,当用户单击它时,颜色变为黑色。当用户再次单击它时,它会切换回白色,以此类推 我尝试了一个简单的if-else构造,但一开始只成功地使按钮变为白色,单击时变为黑色,但再次单击时不会变回白色 这是到目前为止的代码。我想这只是一个愚蠢的错误,但似乎无法克服。“changecolor”是我自己声明的变量 // Select Button Safe or At-Risk final Button bu

我想创建一个行为类似于开关的按钮

当用户点击它时,它应该改变颜色,并保持颜色不变

因此,按钮最初是白色的,当用户单击它时,颜色变为黑色。当用户再次单击它时,它会切换回白色,以此类推

我尝试了一个简单的if-else构造,但一开始只成功地使按钮变为白色,单击时变为黑色,但再次单击时不会变回白色

这是到目前为止的代码。我想这只是一个愚蠢的错误,但似乎无法克服。“changecolor”是我自己声明的变量

// Select Button Safe or At-Risk
final Button button7 = (Button) findViewById(R.id.SafeBT);
button7.setOnClickListener(new OnClickListener(){

    public void onClick(View v) {
        // Perform action on clicks, change color
        if (changecolor == 0) {
            button7.setBackgroundColor(color.black);
            changecolor = 1;          
        } else {
            button7.setBackgroundColor(color.white);
            changecolor = 0; 
        }    
    }

});

请提前寻求建议和帮助。

您在哪里声明了变量changecolor


第二件事是,您可以简单地调用一个UI元素:ToggleButton,它就像一个开关按钮ON/OFF。这就是你想要的吗?请参阅此链接:

您是如何定义changecolor的?就在“公共类HelloTabWidget扩展TabActivity{”下方,我输入了“int changecolor”;谢谢,这正是我想要的。作为android的初学者,我忽略了此选项。再次感谢^^