2012-01-22 6 views
2

私はAndroidアプリにボタンの配列を持っています。私はボタンを押して別のボタンを白に変えたい。ボタンの配列(Android)

final Button [][] button = new Button[5][3]; 

for(int i = 0; i < tableRow.length; i++) { 
    for(int j = 0; j < button[i].length; j++) { 
     button[i][j] = new Button(this); 
     button[i][j].getBackground().setColorFilter(new LightingColorFilter(0x00000000, 0xFF000000)); 
    } 
} 

button[0][0].setOnClickListener(new View.OnClickListener() { 
    public void onClick(View v) { 
     button[0][0].getBackground().setColorFilter(new LightingColorFilter(0x00000000, 0x00FFFFFF)); 
    } 
}); 

私はボタンを押したくながら、これは正常に動作しますが、それが押されたときに、それは[0]白[0]ボタンをオン[0] [0]ボタンをオンにする[0]:私はこのようなコードを持っています[1]白。これに変更すると:

button[0][0].setOnClickListener(new View.OnClickListener() { 
    public void onClick(View v) { 
     button[0][1].getBackground().setColorFilter(new LightingColorFilter(0x00000000, 0x00FFFFFF)); 
    } 
}); 

ボタン[0] [0]を押しても何も起こりません。どうして?

+0

色を変更した後でビューをリロードする –

+0

@BillGaryどのようにビューをリロードしますか? – BenH

答えて

4
button[0][1].invalidate(); 

強制的に表示が再描画されます。

関連する問題