通过单击另一个按钮更改一个按钮的可见性

Change visibility of one button by clicking another button

我试图在按下其中一个按钮时更改两个按钮的可见性。

假设我有一个“开”和一个“关”按钮。当我按下 on 按钮时,我希望 on 按钮隐藏自己而 off 按钮显示,反之亦然。

怎么能做到这一点?

在 Kotlin 中查看此示例,根据自己的需要进行调整:

    val onButton = Button(this)
    val offButton = Button(this)
    onButton.setOnClickListener {
        onButton.visibility = INVISIBLE
        offButton.visibility = VISIBLE
    }
    offButton.setOnClickListener {
        onButton.visibility = VISIBLE
        offButton.visibility = INVISIBLE
    }

或在Java中:

    Button onButton = (Button) findViewById(R.id.onButton);
    Button offButton = (Button) findViewById(R.id.offButton);

    onButton.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            onButton.visibility = INVISIBLE;
            offButton.visibility = VISIBLE;
        }
    });

    offButton.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            onButton.visibility = VISIBLE;
            offButton.visibility = INVISIBLE;
        }
    });

基本上,你要通知就点。

  1. 如何处理可见性?
  2. 如何监听点击事件?

如何处理可见性

您可以使用 enter link description here 属性 来处理视图的可见性。

此 属性 控制视图的可见性。

必须是以下常量值之一。

  • GONE完全隐藏,就好像没有添加视图一样。

  • INVISIBLE 不显示,但在布局时考虑(space留给它)。

  • VISIBLE屏幕可见(默认值)

现在您知道如何在视图中显示或不显示元素了。

如何监听点击事件?

只需在您的按钮上添加 onClickListner

示例代码

btnOff, btnOn // your buttons

btnOff.setOnclickListner {
  // handle visibility 
  btnOn.visibility = View.INVISIBLE
}
 

顺便说一句。如果你想要一个 On/Off 按钮,你应该使用 Toggle Buttons 就像你以前在设置屏幕上的开关按钮一样