में OnItemLongClickListener से ड्रैग-सॉर्ट-लिस्टव्यू को सक्षम करते समय मैं सूचीफ्रेगमेंट में ड्रैग-सॉर्ट-लिस्टव्यू (https://github.com/bauerca/drag-sort-listview) का उपयोग कर रहा हूं।NullPointerException एक सूचीदृश्य
जब मैं सृजन पर ड्रैगॉर्ट सक्षम करता हूं तो चीजें काम कर रही हैं। हालांकि, मैं इसे सूचीदृश्य में से किसी एक आइटम पर एक लंबी अवधि तक अक्षम कर देना चाहता हूं।
तो मैं 3 स्थानों पर
mDslv.setDragEnabled(false);
सेट करना चाहते हैं: onCreateView(), DragSortListView.DropListener, और DragSortListView.RemoveListener
मेरी ListFragment में, मेरे पास है:
listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener(){
@Override
public boolean onItemLongClick(AdapterView<?> av, View v, int pos, long id) {
mDslv.setDragEnabled(true);
return true;
}
});
मेरी आशा है कि किसी भी आइटम पर एक लंबा क्लिक डीएसएलवी चालू हो जाएगा और उस आइटम को गिराया या हटा दिया जाएगा, जिसके बाद डीएसएलवी फिर से अक्षम कर दिया जाएगा।
हालांकि, के बाद (जब नहीं) setDrageEnabled (सही) कहा जाता है, मैं एक NullPointerException मिलती है:
09-03 00:03:33.749: E/AndroidRuntime(9703): FATAL EXCEPTION: main
09-03 00:03:33.749: E/AndroidRuntime(9703): java.lang.NullPointerException
09-03 00:03:33.749: E/AndroidRuntime(9703): at com.mobeta.android.dslv.DragSortController.onScroll(DragSortController.java:381)
09-03 00:03:33.749: E/AndroidRuntime(9703): at android.view.GestureDetector.onTouchEvent(GestureDetector.java:541)
09-03 00:03:33.749: E/AndroidRuntime(9703): at com.mobeta.android.dslv.DragSortController.onTouch(DragSortController.java:243)
09-03 00:03:33.749: E/AndroidRuntime(9703): at android.view.View.dispatchTouchEvent(View.java:3881)
09-03 00:03:33.749: E/AndroidRuntime(9703): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:903)
09-03 00:03:33.749: E/AndroidRuntime(9703): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
09-03 00:03:33.749: E/AndroidRuntime(9703): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
09-03 00:03:33.749: E/AndroidRuntime(9703): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
09-03 00:03:33.749: E/AndroidRuntime(9703): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
09-03 00:03:33.749: E/AndroidRuntime(9703): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
09-03 00:03:33.749: E/AndroidRuntime(9703): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)
09-03 00:03:33.749: E/AndroidRuntime(9703): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1703)
09-03 00:03:33.749: E/AndroidRuntime(9703): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1133)
09-03 00:03:33.749: E/AndroidRuntime(9703): at android.app.Activity.dispatchTouchEvent(Activity.java:2096)
09-03 00:03:33.749: E/AndroidRuntime(9703): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1687)
09-03 00:03:33.749: E/AndroidRuntime(9703): at android.view.ViewRoot.deliverPointerEvent(ViewRoot.java:2196)
09-03 00:03:33.749: E/AndroidRuntime(9703): at android.view.ViewRoot.handleMessage(ViewRoot.java:1880)
09-03 00:03:33.749: E/AndroidRuntime(9703): at android.os.Handler.dispatchMessage(Handler.java:99)
09-03 00:03:33.749: E/AndroidRuntime(9703): at android.os.Looper.loop(Looper.java:130)
09-03 00:03:33.749: E/AndroidRuntime(9703): at android.app.ActivityThread.main(ActivityThread.java:3729)
09-03 00:03:33.749: E/AndroidRuntime(9703): at java.lang.reflect.Method.invokeNative(Native Method)
09-03 00:03:33.749: E/AndroidRuntime(9703): at java.lang.reflect.Method.invoke(Method.java:507)
09-03 00:03:33.749: E/AndroidRuntime(9703): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:876)
09-03 00:03:33.749: E/AndroidRuntime(9703): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:634)
09-03 00:03:33.749: E/AndroidRuntime(9703): at dalvik.system.NativeStart.main(Native Method)
किसी को भी इस की कोशिश की है? कोई विचार? ऐसा लगता है कि गति घटनाओं में से एक न्यूल है, शायद इसलिए कि मैं एक स्पर्श घटना के दौरान डीएसएलवी सक्षम कर रहा हूं।