[英]Why is my TextView null, altough im getting the values from the Database?
I wanted to get the comments for my social network app from the database and show it on a recycler view but the text where the comment should be is null and i dont know why. 我想从数据库中获取我的社交网络应用程序的评论,并在回收者视图上显示它,但评论应该是的文本为空,我不知道为什么。
//The Database Reference //数据库参考
PostsRef = FirebaseDatabase.getInstance().getReference().child("Posts").child(Post_Key).child("Comments");
protected void onStart() {
super.onStart();
FirebaseRecyclerAdapter<Comments, CommentsViewHolder> firebaseRecyclerAdapter
= new FirebaseRecyclerAdapter<Comments, CommentsViewHolder>
(
Comments.class,
R.layout.all_comments_layout,
CommentsViewHolder.class,
PostsRef
)
{
@Override
protected void populateViewHolder(CommentsViewHolder viewHolder, Comments model, int position)
{
viewHolder.setUsername(model.getUsername());
viewHolder.setComment(model.getComment());
viewHolder.setDate(model.getDate());
viewHolder.setTime(model.getTime());
}
};
CommentsList.setAdapter(firebaseRecyclerAdapter);
}
//I think heres the problem //我认为这是问题所在
public static class CommentsViewHolder extends RecyclerView.ViewHolder
{
View mView;
public CommentsViewHolder(@NonNull View itemView)
{
super(itemView);
mView = itemView;
}
public void setUsername(String username)
{
TextView myUserName = (TextView) mView.findViewById(R.id.comment_username);
myUserName.setText("@" + username + " ");
}
public void setComment(String comment)
{
TextView myComment = (TextView) mView.findViewById(R.id.comment_text);
myComment.setText(" :" + comment);
}
public void setDate(String date)
{
TextView myDate = (TextView) mView.findViewById(R.id.comment_date);
myDate.setText(" Date: " + date);
}
public void setTime(String time)
{
TextView myTime = (TextView) mView.findViewById(R.id.comment_time);
myTime.setText(" Time: " + time);
}
}
//And this is my static class //这是我的静态课
public class Comments
{
public String comment, date, time, username;
public Comments()
{
}
public Comments(String comment, String date, String time, String username) {
this.comment = comment;
this.date = date;
this.time = time;
this.username = username;
}
public String getComment() {
return comment;
}
public void setComment(String comment) {
this.comment = comment;
}
public String getDate() {
return date;
}
public void setDate(String date) {
this.date = date;
}
public String getTime() {
return time;
}
public void setTime(String time) {
this.time = time;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}
Anyone has a solution for this or can tell me where's my mistake? 任何人都有解决方案,或者可以告诉我哪里是我的错误? im relatively new to programming in java so yeah..
即时通讯相对较新的java编程所以是啊..
我通过将注释重命名为注释来解决它,因为在数据库中它是注释但我误读了它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.