0

我在卡片视图中最喜欢的按钮有问题。我是编程初学者。所以我不知道错误是什么。 我使用firebase在cardview中设置数据和文本,并获取src并设置为其他活动。在卡片视图中最喜欢的按钮错误

E/JavaBinder: !!! FAILED BINDER TRANSACTION !!! (parcel size = 19121696) 
E/AndroidRuntime: Error reporting crash 
        android.os.TransactionTooLargeException: data parcel size 19121696 bytes 
         at android.os.BinderProxy.transactNative(Native Method) 
         at android.os.BinderProxy.transact(Binder.java:503) 
         at android.app.ActivityManagerProxy.handleApplicationCrash(ActivityManagerNative.java:5523) 
         at com.android.internal.os.RuntimeInit$UncaughtHandler.uncaughtException(RuntimeInit.java:96) 
         at com.google.firebase.crash.FirebaseCrash$zzc.uncaughtException(Unknown Source) 
         at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:693) 
         at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:690) 

我的代码

viewHolder.mStarBtn.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(final View view) { 

        mProccessStar = true; 


         mDatabaseStar.addValueEventListener(new ValueEventListener() { 
          @Override 
          public void onDataChange(DataSnapshot dataSnapshot) { 


           DatabaseReference newPost = mDatabaseStar.push(); 
           newPost.child("title").setValue(model.getTitle()); 
           newPost.child("desc").setValue(model.getDesc()); 


           if (mProccessStar) { 




            if (dataSnapshot.child(post_key1).hasChild(mAuth1.getCurrentUser().getUid())) { 



             mDatabaseStar.child(post_key1).child(mAuth1.getCurrentUser().getUid()).removeValue(); 
             mProccessStar = false; 


            } else { 

             mDatabaseStar.child(post_key1).child(mAuth1.getCurrentUser().getUid()).setValue(newPost); 









             mProccessStar = false; 

            } 
           } 

          } 









          @Override 
          public void onCancelled(DatabaseError databaseError) { 

          } 
         }); 

公共无效setStarBtn(最后弦乐post_key1){

 mDatabaseStar.addValueEventListener(new ValueEventListener() { 
      @Override 
      public void onDataChange(DataSnapshot dataSnapshot) { 

       if (dataSnapshot.child(post_key1).hasChild(mAuth.getCurrentUser().getUid())){ 

        mStarBtn.setImageResource(R.mipmap.ic_star_gold); 

       }else { 
        mStarBtn.setImageResource(R.mipmap.ic_star_gray); 


       } 

      } 

      @Override 
      public void onCancelled(DatabaseError databaseError) { 

      } 
     }); 

    } 

回答