私はButtonの背景イメージを取得しようとしており、if statement
で使用しています。 1000ミリ秒ごとにif statement
を確認してください。これは私のコードです:タイマが動作していない文が動作しない場合
final Button btn_1 = (Button)findViewById(R.id.button1);
final Button btn_2 = (Button)findViewById(R.id.button2);
final Button btn_3 = (Button)findViewById(R.id.button3);
final ImageView a = (ImageView)findViewById(R.id.img1);
final ImageView b = (ImageView)findViewById(R.id.img2);
final ImageView c = (ImageView)findViewById(R.id.img3);
class CheckCondition extends TimerTask {
public void run() {
if (btn_1.getResources().equals(R.drawable.ic_luncher) &&
btn_2.getResources().equals(R.drawable.ic_luncher) &&
btn_3.getResources().equals(R.drawable.ic_luncher)){
a.setVisibility(View.VISIBLE);
b.setVisibility(View.VISIBLE);
c.setVisibility(View.VISIBLE);
}
else
{
a.setVisibility(View.INVISIBLE);
b.setVisibility(View.INVISIBLE);
c.setVisibility(View.INVISIBLE);
}
}
}
Timer timer = new Timer();
timer.schedule(new CheckCondition(), 0, 1000);
しかし、それは動作しません。 imageviews
は、if statement
に該当する場合でも常に表示されません。 何が間違っていますか?
if文には、内側に来ていますか?それをチェックしましたか? –
あなたは間違った方法でequalsメソッドを使用しています。この方法で比較することはできません –
ボタンが画像を持ち、ボタンがbtn_1、btn_2、btn_3ではないので、画像があり、a、b、cを区別していないかどうかを確認する必要がありますか?btn_1、btn_2、btn_3 –