比较存储在android中字符串资源中的字符串?

时间:2012-07-27 06:51:25

标签: android

我有一个按钮,其中(like)是从字符串资源中编写的,点击后我想切换到不像&反之亦然。

如何比较按钮包含与字符串资源相似或不同的内容?

我的string.xml包含

<string name="like">Like</string>
<string name="unlike>unlike</string>

6 个答案:

答案 0 :(得分:5)

试试这个..

    bt.setText(getString(R.string.txt1));
bt.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                myStr=bt.getText().toString();
                if((myStr.equals(getString(R.string.txt1)))){
                    bt.setText(getString(R.string.txt2));
                }else if((myStr.equals(getString(R.string.txt2)))){
                    bt.setText(getString(R.string.txt1));
                }




            }
        });

在string.xml中

<string name="txt1">11111111111</string>
<string name="txt2">2222222222222222</string>

答案 1 :(得分:2)

您可以使用getString方法

 if(btn1.getText().toString().compareTo(getResources().getString(R.string.app_name)) == 0)
    {
      // do some code here
    }    

答案 2 :(得分:2)

使用下面的代码

 Button button = (Button)findViewById(R.id.btn1);

if(button.getText().toString().equals(getString(R.string.like)))
{
    button.setText(getString(R.string.unlike));
}
else
{
    button.setText(getString(R.string.like));
}

答案 3 :(得分:0)

尝试:

String text = getResources().getString(R.string.texttest);
Button button = (Button)this.findViewById(R.id.btntest);
button.setOnClickListener(new OnClickListener() {
  @Override
  public void onClick(View v) {
    if(button.getText().toString().equals(text))
    {
      // do some code here
    }
  }
});

答案 4 :(得分:0)

您可以这种方式检索标签(按钮上的文字)。

Button button=(Button) findViewById(R.id.button1);
Log.d("Text",""+button.getText());

答案 5 :(得分:0)

你可以这样做::

String value=buttonname.getText().toString   

//this Will Give the Text On the Button  

现在比较像这样的方式的值并更改Button的名称::

if(value.equals("Like"))  
 {
   buttonname.setText("UnLike"); 
 }
else
{
  buttonname.setText("Like");
}