1
すべて動作しています。すなわち、データはFirebaseから読み込まれ、FirebaseListAdapterに表示されます。ここでAndroidリストビュー行の色の変更値(選択時ではない)
は、コードに問題がある
int urg = model.getUrgency();
if(urg == 1) v.setBackgroundColor(Color.RED);
問題は、それがランダムにそれが必要以上に赤い色多くの行です。すなわち、私のテストでは、urg = 1のレコードしか作成しませんでしたが、スクロールすると、1行以上が赤に変わります。どうすれば修正できますか?
private void refreshListView(){
fbAdapter = new FirebaseListAdapter<Post>(this, Post.class,R.layout.post_message, query) {
@Override
protected void populateView(View v, Post model, int position) {
TextView messageText = (TextView)v.findViewById(R.id.message_text);
TextView messageTime = (TextView)v.findViewById(R.id.message_time);
messageText.setText(model.getMessageText());
messageTime.setText(shortTime.format(model.getPostTimeStamp()));
int urg = model.getUrgency();
if(urg == 1) v.setBackgroundColor(Color.RED);
}
};
mListView.setAdapter(fbAdapter);
mListView.requestFocus();
}
ここで解決される問題: https://stackoverflow.com/questions/34706585/android-change-background-color-of-specific-item-of-listview –