2012-07-28 90 views
0

我有一组按钮,我想使xo游戏像。 我想在第一次点击时更改按钮文字,然后在第二次点击中再次更改。如何更改按钮文本的第一次敲击和第二次敲击

我有此方法(分配方法,我的按钮的话): -

private String calltext = "x"; 
private String calltext1 = "o"; 

public void MyMethod(View v){ 

    final Button btn = (Button) v; 
    final Button.OnClickListener mylistener = new Button.OnClickListener(){ 

    public void onClick(View v) {      
     btn.setText(calltext); 
    };   
}}; 

btn.setOnClickListener(mylistener); 
+0

你的意思是你想在'x'和'o'之间切换按钮文本吗?如果是这样,你可以在你的'onClick'方法中放一个'if'来检查按钮文本的当前值,然后将它改为另一个。 – Mekswoll 2012-07-28 21:06:43

+0

是的,我的意思是切换x和o我怎么做到这一点? – elias 2012-07-29 10:27:22

回答

3
public void onClick(View v) { 
    String currentText = btn.getText().toString(); 
    btn.setText(currentText.equals("x") ? "o" : "x"); 
} 

有了这个代码,每个按钮被点击的文本将“X”之间切换的时间和“ ○”。

+0

感谢您的回复,我想问问为什么该方法只能在第二次点击按钮时运行?如何让它在第一次点击时运行? – elias 2012-07-29 10:31:08

+0

尝试在'onCreate()'中添加'btn.setText(“x”)',这可能有所帮助。 – Dalmas 2012-07-29 10:34:36

相关问题