私のプロジェクトではrecyclerviewのこの結果が必要です。ここでは3つの異なるテキストビューがあります。そのようなUIとあなたが単一の質問を表示し、すべての時間とのArrayList内のユーザーピックの回答(ストアフルモデル)ストアに答えるビュー(項目ビュー)を代わりにリサイクルビューのviewpager使用できる機能を実装するために選択したアイテムの色を変更するにはrecyclerViewをクリックしてください
holder.llAns1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
holder.llAns1.setBackgroundResource(R.drawable.que_correct_back);
holder.llAns2.setBackgroundResource(R.drawable.round_strock_green);holder.llAns3.setBackgroundResource(R.drawable.round_strock_green);
allAns.add(holder.tvans1.getText().toString());
correctans = userlist.get(position).get("correctans");
/*
check if selected option is correct
* */
if(holder.tvans1.getText().toString().equals(correctans)){
CorrectAns.add(userlist.get(position).get("ans1"));
} else {
try {
CorrectAns.remove(position);
}catch (IndexOutOfBoundsException e){
}
}
});
holder.llAns2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
holder.llAns2.setTag(position);
holder.llAns2.setBackgroundResource(R.drawable.que_correct_back);
holder.llAns1.setBackgroundResource(R.drawable.round_strock_green);
holder.llAns3.setBackgroundResource(R.drawable.round_strock_green);correctans = userlist.get(position).get("correctans");
/*
check if selected option is correct
* */
if(holder.tvans2.getText().equals(correctans)){
CorrectAns.add(userlist.get(position).get("ans2"));
Log.d("corrAns1",String.valueOf(CorrectAns));
} else {
try {
CorrectAns.remove(correctans);
}
catch (IndexOutOfBoundsException e){}
Log.d("corrAns2",String.valueOf(CorrectAns));
}
}
});
holder.llAns3.setTag(position);
holder.llAns3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
holder.llAns3.setBackgroundResource(R.drawable.que_correct_back); /*set drawable if correct option is selected*/
holder.llAns2.setBackgroundResource(R.drawable.round_strock_green);
holder.llAns1.setBackgroundResource(R.drawable.round_strock_green);
correctans = userlist.get(position).get("correctans");
/*
check if selected option is correct
* */
if(holder.tvans3.getText().equals(correctans)){
CorrectAns.add(userlist.get(position).get("ans3"));
Log.d("corrAns1",String.valueOf(CorrectAns));
}else {
try {
CorrectAns.remove(correctans);}catch (IndexOutOfBoundsException e){}
Log.d("corrAns2",String.valueOf(CorrectAns));
}
}
});
あなたのコードは – Moudiz
私の質問で画像を確認してください –
これまでに何を試しましたか? –