Ich möchte meine RecyclerView Artikelhintergrund mit wechselnder Farbe ändern.RecyclerView Artikel Hintergrund wechselnde Farbe außer Betrieb
Hier ist die Methode in Adapter.
public class NewsAdapter extends RecyclerView.Adapter<NewsAdapter.ViewHolder> {
private List<NewsModel> mNewsList;
class ViewHolder extends RecyclerView.ViewHolder {
TextView newsNameText;
TextView newsDataText;
View listView;
public ViewHolder(View newsView) {
super(newsView);
newsNameText = (TextView) newsView.findViewById(R.id.news_Name);
newsDataText = (TextView) newsView.findViewById(R.id.news_Data);
listView = newsView;
}
}
public NewsAdapter(List<NewsModel> newsList) {
mNewsList = newsList;
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.news_item, parent, false);
final ViewHolder holder = new ViewHolder(view);
return holder;
}
public void setData(List<NewsModel> viewData) {
mNewsList.clear();
mNewsList.addAll(viewData);
notifyDataSetChanged();
}
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
NewsModel news = mNewsList.get(position);
holder.setIsRecyclable(true);
if(position % 2 == 0){
holder.listView.setBackgroundColor(0x80E0EEEE);
}
holder.newsNameText.setText(news.getName());
holder.newsDataText.setText(news.getData());
}
@Override
public int getItemCount() {
return mNewsList.size();
}
}
Das Problem ist, wenn ich den Bildschirm berühren und nach unten wischen mehr Artikel zu sehen, die das Element Farbe Hintergrund in der falschen Reihenfolge werden. Es ist nicht alternierend.
Bin ich falsch bei der Verwendung dieser Methode?
Danke!
Danke. Es klappt. Die Farbe sollte (0XFFFFFF) sein. –