Advertisement
Guest User

Untitled

a guest
Jul 27th, 2016
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.37 KB | None | 0 0
  1. java.lang.NullPointerException: Attempt to invoke virtual method 'android.os.Parcelable android.os.Bundle.getParcelable(java.lang.String)' on a null object reference
  2.  
  3. pofirebase
  4. |-> MessageList
  5. |-> -KNbPgKU-p_UHK9mp1nm
  6. |-> message: "hello world"
  7. |-> user: "User1"
  8. |-> -KNbPqh3nOHa8iKwNsDI
  9. |-> message: "hello world 2"
  10. |-> user: "User2"
  11.  
  12. public class MessageList extends BaseModel implements Parcelable {
  13.  
  14. String user;
  15. String message;
  16.  
  17. public MessageList() {
  18.  
  19. }
  20.  
  21. public MessageList(String user, String message) {
  22. this.user = user;
  23. this.message = message;
  24. }
  25.  
  26. protected MessageList(Parcel in) {
  27. user = in.readString();
  28. message = in.readString();
  29. }
  30.  
  31. public static final Creator<MessageList> CREATOR = new Creator<MessageList>() {
  32. @Override
  33. public MessageList createFromParcel(Parcel in) {
  34. return new MessageList(in);
  35. }
  36.  
  37. @Override
  38. public MessageList[] newArray(int size) {
  39. return new MessageList[size];
  40. }
  41. };
  42.  
  43. public String getUser() {
  44. return user;
  45. }
  46.  
  47. public String getMessage() {
  48. return message;
  49. }
  50.  
  51. @Override
  52. public String toString() {
  53. return "MessageList{" +
  54. "user='" + user + ''' +
  55. ", message='" + message + ''' +
  56. '}';
  57. }
  58.  
  59.  
  60. @Override
  61. public int describeContents() {
  62. return 0;
  63. }
  64.  
  65. @Override
  66. public void writeToParcel(Parcel dest, int flags) {
  67. dest.writeString(user);
  68. dest.writeString(message);
  69. }
  70. }
  71.  
  72. public class MyRecycleAdapter extends FirebaseRecyclerAdapter<MessageList, MyRecycleAdapter.MyHolder> {
  73.  
  74. public MyRecycleAdapter(Class<MessageList> modelClass, int modelLayout, Class<MyRecycleAdapter.MyHolder> viewHolderClass, Query ref) {
  75. super(modelClass, modelLayout, viewHolderClass, ref);
  76. }
  77.  
  78. public MyRecycleAdapter(Class<MessageList> modelClass, int modelLayout, Class<MyRecycleAdapter.MyHolder> viewHolderClass, DatabaseReference ref) {
  79. super(modelClass, modelLayout, viewHolderClass, ref);
  80. }
  81.  
  82. @Override
  83. protected void populateViewHolder(MyRecycleAdapter.MyHolder viewHolder, MessageList model, int position) {
  84. viewHolder.populate(model);
  85. }
  86.  
  87. public class MyHolder extends RecyclerView.ViewHolder {
  88. TextView tvItemFirst;
  89. TextView tvItemSecond;
  90.  
  91. public MyHolder(View itemView) {
  92. super(itemView);
  93. tvItemFirst = (TextView) itemView.findViewById(R.id.tvItemFirst);
  94. tvItemSecond = (TextView) itemView.findViewById(R.id.tvItemSecond);
  95.  
  96. }
  97. public void populate(MessageList model){
  98. tvItemFirst.setText(model.getUser());
  99. tvItemSecond.setText(model.getMessage());
  100. }
  101.  
  102. }
  103. }
  104.  
  105. public class ListAdapterFragment extends Fragment {
  106.  
  107. RecyclerView rvFireBase;
  108.  
  109.  
  110. public ListAdapterFragment() {
  111. // Required empty public constructor
  112. }
  113.  
  114.  
  115. @Override
  116. public View onCreateView(LayoutInflater inflater, ViewGroup container,
  117. Bundle savedInstanceState) {
  118. View view = inflater.inflate(R.layout.fragment_list_adapter, container, false);
  119.  
  120. rvFireBase = (RecyclerView) view.findViewById(R.id.rvFireBase);
  121.  
  122. //1.) ref to list of data
  123. FirebaseDatabase database = FirebaseDatabase.getInstance();
  124. DatabaseReference messageList = database.getReference("MessageList");
  125.  
  126. //2.) adapter
  127. MyRecycleAdapter adapter = new MyRecycleAdapter(MessageList.class,
  128. R.layout.list_view_layout,MyRecycleAdapter.MyHolder.class,messageList
  129. );
  130.  
  131. rvFireBase.setAdapter(adapter);
  132.  
  133.  
  134. return view;
  135.  
  136. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement