10個の質問に対する回答である10個のボタンが設定されています。特定のボタンがクリックされると、以下に示すonClickメソッドでswitch文が設定されます。私の質問は、正しいかどうかを知るために、2つの配列をonClickメソッドに渡す必要があることを見て、すべてのボタンに対してOnClickListenersを設定する最も良い方法は何ですか?また、私は整数値を返す必要があります。おかげ複数のOnClickListeners Android
はpublic void onClick(View v, int[] qaarray, int questionorder) {
int x=0;
switch(v.getId())
{
case R.id.imageButton0:
if(qaarray[0] == questionorder){
//correct
}else{
//incorrect
}
break;
case R.id.imageButton1:
if(qaarray[1] == questionorder){
// correct
}else{
//incorrect
}
break;
case R.id.imageButton2:
if(qaarray[2] == questionorder){
// correct
}else{
//incorrect
}
break;
case R.id.imageButton3:
if(qaarray[3] == questionorder){
// correct
}else{
//incorrect
}
break;
case R.id.imageButton4:
if(qaarray[4] == questionorder){
//correct
}else{
//incorrect
}
break;
case R.id.imageButton5:
if(qaarray[5] == questionorder){
//correct
}else{
//incorrect
}
break;
case R.id.imageButton6:
if(qaarray[6] == questionorder){
//correct
}else{
//incorrect
}
break;
case R.id.imageButton7:
if(qaarray[7] == questionorder){
//correct
}else{
//incorrect
}
break;
case R.id.imageButton8:
if(qaarray[8] == questionorder){
//correct
}else{
//incorrect
}
break;
case R.id.imageButton9:
if(qaarray[9] == questionorder){
//correct
}else{
//incorrect
}
break;
default:
throw new RuntimeException("Unknown button ID");
}
}
setTag()メソッドはほとんど使用されませんが、このような場合には非常に便利です! xandyの答えが完成すると、android:click属性を使用して、XMLレイアウトでonClickListenersを直接設定することもできます。 – zrgiu
どのようにして、整数などの情報をonClickから返すことができますか? –
できません、onClickはイベントハンドラです。上記のコードでは、イベントをトリガする情報をビューから抽出しました。それを利用するのはあなたのコード次第です。 – xandy