回收者视图未在Android Studio中显示一张卡片视图

马法兹·阿桑(Mafaz Ahsan)

我试图通过回收者视图在片段的卡视图中显示阵列列表。阵列列表包含要在片段的五个卡视图上显示的五个值。但是它只显示四个.fragment的代码如下所示:

public class AddMemberFragment extends Fragment {

private RecyclerView mRecyclerView;
private RecyclerView.Adapter mAdapter;
private RecyclerView.LayoutManager mLayoutManager;
private View view ;
FirebaseUser firebaseUser = FirebaseAuth.getInstance().getCurrentUser();
DatabaseReference mRootRef = FirebaseDatabase.getInstance().getReference();
String userId;
String n_team ;
private ArrayList<Friend> friends;


public AddMemberFragment() {
}

@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
    view = inflater.inflate(R.layout.addnewfriend_fragment, container, false);
    return view;
}

@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);

    userId = firebaseUser.getUid();
    ManageTeamTabbedActivity activity = (ManageTeamTabbedActivity) getActivity();
    n_team = activity.getMyData();
    mRecyclerView = (RecyclerView) getView().findViewById(R.id.addNewFriend);
    mLayoutManager = new LinearLayoutManager(getActivity());
    mRecyclerView.setLayoutManager(mLayoutManager);


    mRootRef.child("users").addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            ArrayList<Friend> friendArrayList = new ArrayList<>();
            for (DataSnapshot userSnapshot : dataSnapshot.getChildren()) {
                Log.d("demo", "USERID " + FirebaseAuth.getInstance().getCurrentUser().getUid());
                Friend friend = new Friend();
                friend.setId(userSnapshot.getKey());
                friend.setFriendName((String) userSnapshot.child("profiles").child("fname").getValue());  //Implement it
                friendArrayList.add(friend);
            }
            friends = friendArrayList;
            mAdapter = new AddFriendAdapter(getActivity(), friends, n_team);
            mRecyclerView.setAdapter(mAdapter);


        }

        @Override
        public void onCancelled(DatabaseError databaseError) {

        }
    });
}

适配器代码如下所示。

public class AddFriendAdapter extends RecyclerView.Adapter<AddFriendAdapter.RecyclerViewHolder>{

private ArrayList<Friend> mData;
private Context mContext;
private FirebaseAuth auth;
private String u_team ;

public AddFriendAdapter(Context mContext, ArrayList<Friend> friendList , String u_team) {
    this.mData = friendList;
    this.mContext = mContext;
    this.u_team= u_team;
}

@Override
public RecyclerViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.addnewfriend_layout, parent, false);
    AddFriendAdapter.RecyclerViewHolder viewHolder = new AddFriendAdapter.RecyclerViewHolder(view);
    return viewHolder;
}

@Override
public void onBindViewHolder(RecyclerViewHolder holder, final int position) {
    final Friend frnd =(Friend) mData.get(position);

    holder.friendName.setText(frnd.getFriendName());
    holder.addFriend.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            frnd.setStatus("sent");
            final DatabaseReference mRootRef = FirebaseDatabase.getInstance().getReference();
            final FirebaseUser firebaseUser = FirebaseAuth.getInstance().getCurrentUser();
            final String UID = firebaseUser.getUid();
            mRootRef.child("users").addValueEventListener(new ValueEventListener() {
                @Override
                public void onDataChange(DataSnapshot dataSnapshot) {
                    mRootRef.child("users").child(UID).child("Your Teams").child("requests").child(frnd.getId()).setValue(frnd);
                    Friend temp = new Friend();
                    temp.setId(firebaseUser.getUid());
                    temp.setFriendName(firebaseUser.getDisplayName());
                    temp.setStatus("received");
                    mRootRef.child("users").child(frnd.getId()).child("Your Teams ").child("requests").child(firebaseUser.getUid()).setValue(temp);
                    mData.remove(frnd);
                    notifyDataSetChanged();
                }

                @Override

                public void onCancelled(DatabaseError databaseError) {

                }
            });
        }
    });
}

@Override
public int getItemCount() {
    return mData.size();
}

public class RecyclerViewHolder extends RecyclerView.ViewHolder {
    TextView friendName;
    ImageButton addFriend;

    public RecyclerViewHolder(View itemView) {
        super(itemView);
        friendName = (TextView)itemView.findViewById(R.id.textViewFriendName);
        addFriend = (ImageButton) itemView.findViewById(R.id.imagebuttonFriendAdd);
    }
}

模拟器的屏幕截图也已随附,其中“添加新成员”片段中有四个卡视图。

在此处输入图片说明

我很累自己调试它,发现数组列表中的条目与预期的一样是五个。 在此处输入图片说明

还附带了数据库图片供参考。如图所示,它也有五个ID要显示,但“回收者”视图显示四个ID。在此处输入图片说明

随机的想法2468

由于以下限制,我将我的评论放入了答案字段:“您必须拥有50个声誉才能发表评论”。

放在Log.d()里面onBindViewHolder监视值如何?使用“断点”来分析数据onActivityCreated()并不是一个好主意,因为UI可能尚未完全填充。另外,您还可以添加第6条记录,它显示4条还是5条记录?这样,您可以找出是最后记录问题还是其他问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

物料未在“回收者视图”中按顺序显示

来自分类Dev

回收者视图中的回收者视图

来自分类Dev

终极回收者视图

来自分类Dev

如何在android中使用片段显示回收者视图

来自分类Dev

回收者视图未显示

来自分类Dev

从回收者视图隐藏视图

来自分类Dev

Android:如何更新“回收者”视图列表中的单行

来自分类Dev

片段中的回收者视图

来自分类Dev

在水平recyclerview中使一张卡片视图更多可见

来自分类Dev

在水平recyclerview中使一张卡片视图更多可见

来自分类Dev

Android Kotlin在回收者视图中对点击事件的新意图

来自分类Dev

未在“主要活动回收者”视图上设置行布局

来自分类Dev

ImageDetailsActivity用于回收者视图

来自分类Dev

添加项目修饰后,适配器未在以编程方式创建的回收者视图中创建视图

来自分类Dev

使“回收者视图”从底部显示行

来自分类Dev

回收者视图不显示任何内容

来自分类Dev

回收者视图不显示列表

来自分类Dev

片段未显示回收者视图

来自分类Dev

在回收者视图上配置搜索视图

来自分类Dev

如何访问回收者视图的子视图?

来自分类Dev

在片段中创建回收者视图?

来自分类Dev

片段中的多个回收者视图

来自分类Dev

视图中的Django外键 - 获取为列表中的每个用户显示的第一张图像

来自分类Dev

回收者视图中仅显示一项

来自分类Dev

无法在回收者视图中显示空视图

来自分类Dev

如何突出显示“回收者视图”中的选定项目?

来自分类Dev

我可以在一个活动Android中使用2个以上的回收者视图吗

来自分类Dev

如何根据 id 选择第一张图像并在(显示)视图中显示?

来自分类Dev

(android)动态嵌套回收者视图项中随机更改的问题

Related 相关文章

热门标签

归档