卡片视图自动计数
Count number automatically for card view
我正在尝试制定一种方法,如果卡 position == 0
然后 viewHolder.mPostSortNum.setText("1");
" 并且如果 position == 1
然后 viewHolder.mPostSortNum.setText("2");
但是我想对所有的问题进行编号自动卡片,因为这些方法仅包含位置 0,1,所以我需要一种方法来自动按位置对所有卡片进行编号。
这是我的 activity 方法:
FirebaseRecyclerAdapter<Getting_Posts, PostViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<Getting_Posts, PostViewHolder>(
Getting_Posts.class, R.layout.post_card_design, PostViewHolder.class, mDatabase) {
@Override
protected void populateViewHolder(final PostViewHolder viewHolder, final Getting_Posts model, int position) {
viewHolder.setUsername(model.getUsername());
viewHolder.setProfile(getActivity().getApplicationContext(), model.getProfile());
viewHolder.setDescribe(model.getDescribe());
viewHolder.setWallpaper(getActivity().getApplicationContext(), model.getWallpaper());
//heres my methods but its for 3 cards only
if (position==0){viewHolder.mPostSortNum.setText("1");}
if (position==1){viewHolder.mPostSortNum.setText("2");}
if (position==2){viewHolder.mPostSortNum.setText("3");}
}
};
mPostList.setAdapter(firebaseRecyclerAdapter);}
position
总是比实际数字少一,因为索引总是从 0 开始。每次调用 viewHolder.mPostSortNum.setText("");
时只需使用 position + 1
。
FirebaseRecyclerAdapter<Getting_Posts, PostViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<Getting_Posts, PostViewHolder>(
Getting_Posts.class, R.layout.post_card_design, PostViewHolder.class, mDatabase) {
@Override
protected void populateViewHolder(final PostViewHolder viewHolder, final Getting_Posts model, int position) {
viewHolder.setUsername(model.getUsername());
viewHolder.setProfile(getActivity().getApplicationContext(), model.getProfile());
viewHolder.setDescribe(model.getDescribe());
viewHolder.setWallpaper(getActivity().getApplicationContext(), model.getWallpaper());
viewHolder.mPostSortNum.setText(String.valueOf(position + 1));
}
};
mPostList.setAdapter(firebaseRecyclerAdapter);}
我正在尝试制定一种方法,如果卡 position == 0
然后 viewHolder.mPostSortNum.setText("1");
" 并且如果 position == 1
然后 viewHolder.mPostSortNum.setText("2");
但是我想对所有的问题进行编号自动卡片,因为这些方法仅包含位置 0,1,所以我需要一种方法来自动按位置对所有卡片进行编号。
这是我的 activity 方法:
FirebaseRecyclerAdapter<Getting_Posts, PostViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<Getting_Posts, PostViewHolder>(
Getting_Posts.class, R.layout.post_card_design, PostViewHolder.class, mDatabase) {
@Override
protected void populateViewHolder(final PostViewHolder viewHolder, final Getting_Posts model, int position) {
viewHolder.setUsername(model.getUsername());
viewHolder.setProfile(getActivity().getApplicationContext(), model.getProfile());
viewHolder.setDescribe(model.getDescribe());
viewHolder.setWallpaper(getActivity().getApplicationContext(), model.getWallpaper());
//heres my methods but its for 3 cards only
if (position==0){viewHolder.mPostSortNum.setText("1");}
if (position==1){viewHolder.mPostSortNum.setText("2");}
if (position==2){viewHolder.mPostSortNum.setText("3");}
}
};
mPostList.setAdapter(firebaseRecyclerAdapter);}
position
总是比实际数字少一,因为索引总是从 0 开始。每次调用 viewHolder.mPostSortNum.setText("");
时只需使用 position + 1
。
FirebaseRecyclerAdapter<Getting_Posts, PostViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<Getting_Posts, PostViewHolder>(
Getting_Posts.class, R.layout.post_card_design, PostViewHolder.class, mDatabase) {
@Override
protected void populateViewHolder(final PostViewHolder viewHolder, final Getting_Posts model, int position) {
viewHolder.setUsername(model.getUsername());
viewHolder.setProfile(getActivity().getApplicationContext(), model.getProfile());
viewHolder.setDescribe(model.getDescribe());
viewHolder.setWallpaper(getActivity().getApplicationContext(), model.getWallpaper());
viewHolder.mPostSortNum.setText(String.valueOf(position + 1));
}
};
mPostList.setAdapter(firebaseRecyclerAdapter);}