文字列リソースから (like) が書き込まれるボタンがあります。
ボタンの内容を文字列リソースと比較するにはどうすればよいですか?
私のstring.xmlには含まれています
<string name="like">Like</string>
<string name="unlike>unlike</string>
文字列リソースから (like) が書き込まれるボタンがあります。
ボタンの内容を文字列リソースと比較するにはどうすればよいですか?
私のstring.xmlには含まれています
<string name="like">Like</string>
<string name="unlike>unlike</string>
これを試して..
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>
getString メソッドを使用できます
if(btn1.getText().toString().compareTo(getResources().getString(R.string.app_name)) == 0)
{
// do some code here
}
以下のコードを使用
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));
}
あなたはこれを行うことができます::
String value=buttonname.getText().toString
//this Will Give the Text On the Button
この方法で値を比較し、ボタンの名前を変更します::
if(value.equals("Like"))
{
buttonname.setText("UnLike");
}
else
{
buttonname.setText("Like");
}
次のように試してください:
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
}
}
});
この方法で、ラベル (ボタンのテキスト) を取得できます。
Button button=(Button) findViewById(R.id.button1);
Log.d("Text",""+button.getText());