事件从2个按钮获取字符串

时间:2014-09-17 14:28:02

标签: java android

我正在使用适配器在GridView中生成按钮。

使用OnClickListener,每当我从GridView中单击一个按钮时,就可以在变量中获取按钮的String。但是,我想单击一个按钮,将其文本存储在变量中,然后单击另一个按钮,将其文本存储在另一个变量中,以便稍后我可以比较这两个文本。我怎么能这样做?

g我正在使用OnClickListener,因此我之前对一个按钮的实现如下:

public void onClick(View v) {
Button b = (Button)v;
String text = b.getText.toString();

使用这种方法,我只能点击第一个按钮来获取和存储文本,除非我将所有值存储在数组中。

2 个答案:

答案 0 :(得分:0)

请您分享您的代码以使事情变得更易于理解?请编辑您的问题......无论如何:

MainActivity.java

public class MainActivity extends Activity {
    private Button button1;
    private Button button2;
    private String butString, butString2;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        button1 = (Button) findViewById(R.id.button1);
        button2 = (Button) findViewById(R.id.button2);

        button1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                butString = (String) button1.getText();
            }
        });
        button2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                butString2 = (String) button1.getText();

            }
        });
    }
}

之后你可以比较两个字符串。

答案 1 :(得分:0)

好的,根据我的理解,你想比较网格视图中两个项目的字符串。如果这是你想要的,继续我将如何做(只是一个伪代码):

String mValue1, mValue2;
boolean isOneClicked = false;

onItemClickedListener(item, position){
if(!isOneClicked){
  mValue1 = item.stringValue;
  isOneClicked = true;
}
else{
  mValue2 = item.stringValue;
  //do whatever you want here
  //Reset when done
  mValue1 = "";
  mValue2 = "";
  isOneClicked = false;
}
}