7
Realm ve Recyclerview öğelerini öğreniyorum. Öğeleri basitçe ekleyebileceğiniz ve silebileceğiniz basit uygulamalar yaptım. Öğeyi tek tek silmeye başladığım kadar her şey iyi çalışıyor. Ben silmek tıklayın çok son öğe azından istisna banajava.lang.IllegalStateException: Nesne artık Realm tarafından yönetilmiyor. Silindi mi?
java.lang.IllegalStateException: Object is no longer managed by Realm. Has it been deleted?
vermek Bu benim kod İşte
@Override
public void onDeleteClick(int position) {
mRealm.beginTransaction();
mResult.get(position).deleteFromRealm();
mRealm.commitTransaction();
adapter.notifyItemRemoved(position);
}
olduğunu tam yığınına yardım Christian Melchior için
java.lang.IllegalStateException: Object is no longer managed by Realm. Has it been deleted?
at io.realm.internal.InvalidRow.getStubException(InvalidRow.java:192)
at io.realm.internal.InvalidRow.getString(InvalidRow.java:88)
at io.realm.PersonsRealmProxy.realmGet$firstName(PersonsRealmProxy.java:67)
at techiespk.realmpractice.Persons.getFirstName(Persons.java:22)
at techiespk.realmpractice.MyListAdapter.onBindViewHolder(MyListAdapter.java:44)
at techiespk.realmpractice.MyListAdapter.onBindViewHolder(MyListAdapter.java:15)
at android.support.v7.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:5471)
at android.support.v7.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:5504)
at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4741)
at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4617)
at android.support.v7.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:1994)
at android.support.v7.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1390)
at android.support.v7.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1353)
at android.support.v7.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:574)
at android.support.v7.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:3028)
at android.support.v7.widget.RecyclerView.dispatchLayout(RecyclerView.java:2906)
at android.support.v7.widget.RecyclerView.onLayout(RecyclerView.java:3283)
sonra
önce bu
yaparak kodumu sabit. Bir çözüm, 'onBindViewHolder' yönteminizde' obj.isValid() 'işlevini kullanmak ve bu olduğunda" silindi "durumunu kullanmak olacaktır. –