在 Android 中使用 FirebaseListAdapter 填充列表视图
Populating listview with FirebaseListAdapter in Android
我正在使用计数器值来计算我的 ListView
项。但是当我向下滚动和向后向上滚动时,它仍然计算我代码中的值并更改值。
这个值应该是 1 和 2 而不是 7 和 8...
这是我的代码
DatabaseReference myQuery = databaseReference.child("Tests").child(PIN).child("Questions");
FirebaseListAdapter<QuizStatistic_list> adapter = new FirebaseListAdapter<QuizStatistic_list>(this, QuizStatistic_list.class, R.layout.list_quiz_statistic, myQuery) {
@Override
protected void populateView(View v, QuizStatistic_list model, int position) {
TextView quizQuestion, questionNumber, ansA, ansB, ansC, ansD;
quizQuestion = (TextView) v.findViewById(R.id.textView_quizQuestion);
questionNumber = (TextView) v.findViewById(R.id.textView_questionNumber);
ansA = (TextView) v.findViewById(R.id.textView_ansA);
ansB = (TextView) v.findViewById(R.id.textView_ansB);
ansC = (TextView) v.findViewById(R.id.textView_ansC);
ansD = (TextView) v.findViewById(R.id.textView_ansD);
quizQuestion.setText(model.getQuestion());
questionNumber.setText(counter.toString());
ansA.setText("A: " + model.getAnswerA());
ansB.setText("B: " + model.getAnswerB());
ansC.setText("C: " + model.getAnswerC());
ansD.setText("D: " + model.getAnswerD());
//This value counts listview items
counter++;
}
};
questionsList.setAdapter(adapter);
使用位置而不是计数器。!
questionNumber.setText(""+position+1);
位置是你的数组列表的索引号。!
所以它会从 0 开始加一个,它会显示你想要的结果第一个数字将是索引 0+1=1;
也许它会帮助你喜欢
我正在使用计数器值来计算我的 ListView
项。但是当我向下滚动和向后向上滚动时,它仍然计算我代码中的值并更改值。
这个值应该是 1 和 2 而不是 7 和 8...
这是我的代码
DatabaseReference myQuery = databaseReference.child("Tests").child(PIN).child("Questions");
FirebaseListAdapter<QuizStatistic_list> adapter = new FirebaseListAdapter<QuizStatistic_list>(this, QuizStatistic_list.class, R.layout.list_quiz_statistic, myQuery) {
@Override
protected void populateView(View v, QuizStatistic_list model, int position) {
TextView quizQuestion, questionNumber, ansA, ansB, ansC, ansD;
quizQuestion = (TextView) v.findViewById(R.id.textView_quizQuestion);
questionNumber = (TextView) v.findViewById(R.id.textView_questionNumber);
ansA = (TextView) v.findViewById(R.id.textView_ansA);
ansB = (TextView) v.findViewById(R.id.textView_ansB);
ansC = (TextView) v.findViewById(R.id.textView_ansC);
ansD = (TextView) v.findViewById(R.id.textView_ansD);
quizQuestion.setText(model.getQuestion());
questionNumber.setText(counter.toString());
ansA.setText("A: " + model.getAnswerA());
ansB.setText("B: " + model.getAnswerB());
ansC.setText("C: " + model.getAnswerC());
ansD.setText("D: " + model.getAnswerD());
//This value counts listview items
counter++;
}
};
questionsList.setAdapter(adapter);
使用位置而不是计数器。!
questionNumber.setText(""+position+1);
位置是你的数组列表的索引号。! 所以它会从 0 开始加一个,它会显示你想要的结果第一个数字将是索引 0+1=1; 也许它会帮助你喜欢