我尝试cancel
transaction
Realm
RealmRecyclerView
Snackbar
内undo
,{@ 1}}项目被删除后,会出现asynchronous transactions
,使track
请求成为可能。当我发出多个删除请求时,会抛出异常。我正在阅读public void deleteItem(View view, int position) {
if (getData() != null && getData().getPosition(position).isValid()) {
MyObjectRealm item = getData().getPosition(position);
realm.beginTransaction();
item.deleteFromRealm();
notifyItemRemoved(position);
showSnackbar(view, position);
}
}
private void showSnackbar(View view, int position) {
Snackbar snackbar = Snackbar.make(view, context.getString(R.string.removed), Snackbar.LENGHT_SHORT);
snackbar.setAction(context.getString(R.string.undo), new View.OnClickListener() {
@Override
public void onClick(View view) {
if (realm.isInTransaction()) {
realm.cancelTransaction();
notifyItemRangeChanged(position, getItemCount());
}
}
});
snackbar.addCallback(new Snackbar.Callback() {
@Override
public void onDismissed(Snackbar transientBottomBar, int event) {
if(realm.isInTransaction()) {
realm.commitTransaction();
}
}
});
snackbar.show();
}
,但我不知道如何03-27 17:28:14.345 17667-17667/com.example E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example, PID: 17667
java.lang.IllegalStateException: The Realm is already in a write transaction in /Users/cm/Realm/realm-java/realm/realm-library/src/main/cpp/io_realm_internal_SharedRealm.cpp line 131
at io.realm.internal.SharedRealm.nativeBeginTransaction(Native Method)
at io.realm.internal.SharedRealm.beginTransaction(SharedRealm.java:237)
at io.realm.BaseRealm.beginTransaction(BaseRealm.java:309)
at io.realm.Realm.beginTransaction(Realm.java:126)
at com.example.adapter.MyAdapter.deleteItem(MyAdapter.java:90)
at com.example.util.SwipeHelper.onSwiped(SwipeHelper.java:32)
at android.support.v7.widget.helper.ItemTouchHelper$4.run(ItemTouchHelper.java:686)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5221)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
交易。
`library(adehabitatHS)
Broods<-FinalVegBroods
Broods$Hen.ID <- factor(Broods$Hen.ID)
used <- subset(Broods, Broods$use == 1)
used <- used[c(0,-3:-47,-49:-58)]
used <- xtabs(~used$Hen.ID + used$Moisturenew, used)
used <- as.data.frame.matrix(used[1:19, 1:6])
rand <- subset(Broods, Broods$use == 0)
rand <- rand[c(0,-3:-47,-49:-58)]
rand <- xtabs(~rand$Hen.ID + rand$Moisturenew, used)
rand <- as.data.frame.matrix(rand[1:19, 1:6])
##### PVT Code for VegRSF #
pvt.W <- widesIII(used,rand,avknown = FALSE, alpha = 0.1)
pvt.W
par(mfrow=c(1,2))
plot(pvt.W)`
例外:
Khi2Lj df pvalue
STGR201512 Inf 2 0.0000000000
STGR201513 Inf 0 0.0000000000
STGR201514 5.3096114 1 0.0212080867
STGR201515 0.0000000 0 1.0000000000
STGR201556 5.5451774 0 0.0000000000
STGR2016204 Inf 2 0.0000000000
STGR2016205 2.4327906 2 0.2962962963
STGR2016307 5.1325260 2 0.0768220955
STGR2016309 4.5596652 2 0.1023013283
STGR2016321 0.3047875 2 0.8586501034
STGR2016322 11.5419295 1 0.0006804398
STGR2016328 4.9671534 2 0.0834442357
STGR2016330 0.1734535 2 0.9169276250
STGR2016331 2.6234302 2 0.2693576848
STGR2016333 Inf 3 0.0000000000
STGR2016334 11.2346899 3 0.0105222081
STGR2016340 4.3812635 3 0.2231289938
STGR2016342 Inf 2 0.0000000000
STGR2016343 7.4623299 1 0.0063003410