首页 > 解决方案 > 每次单击/点击时要更改的按钮文本

问题描述

我希望我的按钮文本在每次点击/单击时在“停止”和“开始”之间切换。我该怎么做?

    private Button stop;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        stop = (Button) findViewById(R.id.start);
        stop.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        stop.setText("Stop");
    }

标签: javaandroid

解决方案


  Boolean isStart = true; initialize a global variable


  protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        stop = (Button) findViewById(R.id.start);
        stop.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        if(v.getId()==R.id.start){ 
            if(isStart){
                stop.setText("Stop")
            }else{
                stop.setText("Start");  
            }
            isStart = !isStart;
        }
    }

v.getId()==R.id.start- 在这段代码中,我正在检查您是否单击了该按钮。如果您只有 1 个使用thisas 的视图onClickListener,则无需进行该检查。如果您有多个项目,则应检查单击了哪个项目(最好使用switch-case)。


推荐阅读