6

文字列リソースから (like) が書き込まれるボタンがあります。

ボタンの内容を文字列リソースと比較するにはどうすればよいですか?

私のstring.xmlには含まれています

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

6 に答える 6

12

これを試して..

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>
于 2012-07-27T07:29:30.517 に答える
3

getString メソッドを使用できます

 if(btn1.getText().toString().compareTo(getResources().getString(R.string.app_name)) == 0)
    {
      // do some code here
    }    
于 2012-07-27T07:00:15.520 に答える
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));
}
于 2012-07-27T07:00:51.687 に答える
0

あなたはこれを行うことができます::

String value=buttonname.getText().toString   

//this Will Give the Text On the Button  

この方法で値を比較し、ボタンの名前を変更します::

if(value.equals("Like"))  
 {
   buttonname.setText("UnLike"); 
 }
else
{
  buttonname.setText("Like");
}
于 2012-07-27T07:03:30.963 に答える
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
    }
  }
});
于 2012-07-27T07:01:40.373 に答える
0

この方法で、ラベル (ボタンのテキスト) を取得できます。

Button button=(Button) findViewById(R.id.button1);
Log.d("Text",""+button.getText());
于 2012-07-27T07:01:44.117 に答える