2015-06-18 7 views
15

मैं रीसाइक्लर्व पर एकाधिक आइटम चुनने के लिए लाइब्रेरी रीसाइक्लिंग-मल्टीइलेक्स्ट का उपयोग कर रहा हूं सैमसंग डिवाइस पर: जब मैं एक आइटम को लम्बाई और चुनता हूं multiselector शुरू होता है लेकिन जैसे ही मैं अंतिम चयनित आइटम मैं अपवाद यह केवल ओम सैमसंग उपकरणोंशून्य ऑब्जेक्ट पर void.roidTranslationZ (float) को कॉल नहीं कर सकता

JNI DETECTED ERROR IN APPLICATION: can't call void android.view.View.setTranslationZ(float) on null object 
in call to CallVoidMethodV 
from void android.animation.PropertyValuesHolder.nCallFloatMethod(java.lang.Object, long, float) 
"main" prio=5 tid=1 Runnable 
| group="main" sCount=0 dsCount=0 obj=0x86d99ef0 self=0xb4d07800 
| sysTid=28321 nice=0 cgrp=apps sched=0/0 handle=0xb6f9dec8 
| state=R schedstat=(1263638622 186444747 1521) utm=90 stm=36 core=1 HZ=100 
| stack=0xbe20a000-0xbe20c000 stackSize=8MB 
| held mutexes= "mutator lock"(shared held) 
native: #00 pc 00004c58 /system/lib/libbacktrace_libc++.so (UnwindCurrent::Unwind(unsigned int, ucontext*)+23) 
native: #01 pc 000034c1 /system/lib/libbacktrace_libc++.so (Backtrace::Unwind(unsigned int, ucontext*)+8) 
native: #02 pc 002590fd /system/lib/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, int, char const*, art::mirror::ArtMethod*)+84) 
native: #03 pc 0023c5c3 /system/lib/libart.so (art::Thread::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) const+162) 
native: #04 pc 000b2655 /system/lib/libart.so (art::JniAbort(char const*, char const*)+620) 
native: #05 pc 000b2d85 /system/lib/libart.so (art::JniAbortF(char const*, char const*, ...)+68) 
native: #06 pc 000b309f /system/lib/libart.so (art::ScopedCheck::CheckVirtualMethod(_jobject*, _jmethodID*)+438) 
native: #07 pc 000be40b /system/lib/libart.so (art::CheckJNI::CallVoidMethodV(_JNIEnv*, _jobject*, _jmethodID*, std::__va_list)+82) 
native: #08 pc 00068467 /system/lib/libandroid_runtime.so (???) 
native: #09 pc 00072005 /system/framework/arm/boot.oat (Java_android_animation_PropertyValuesHolder_nCallFloatMethod__Ljava_lang_Object_2JF+132) 
at android.animation.PropertyValuesHolder.nCallFloatMethod(Native method) 
at android.animation.PropertyValuesHolder.access$400(PropertyValuesHolder.java:38) 
at android.animation.PropertyValuesHolder$FloatPropertyValuesHolder.setAnimatedValue(PropertyValuesHolder.java:1296) 
at android.animation.ObjectAnimator.animateValue(ObjectAnimator.java:952) 
at android.animation.ValueAnimator.animationFrame(ValueAnimator.java:1207) 
at android.animation.ValueAnimator.doAnimationFrame(ValueAnimator.java:1248) 
at android.animation.ValueAnimator$AnimationHandler.doAnimationFrame(ValueAnimator.java:659) 
at android.animation.ValueAnimator$AnimationHandler.run(ValueAnimator.java:682) 
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:777) 
at android.view.Choreographer.doCallbacks(Choreographer.java:590) 
at android.view.Choreographer.doFrame(Choreographer.java:559) 
+1

मुझे अपने बटन पर setStateListAnimator() को कॉल करते समय एक ही क्रैश हो रहा है। यह मेरे सैमसंग गैलेक्सी एस 5 पर हो रहा है। – rrbrambley

+2

हमें वही समस्या थी जब हमने setStateListAnimator (शून्य) कहा; एक दृश्य पर – hellphil

+0

@hellphil मैंने पहले से ही कोशिश की है, मैं रीसाइक्लिंगव्यू का उपयोग कर रहा हूं, जिस पर आपने यह देखा था? कोई और सुझाव ?? – chin87

उत्तर

9

हो रहा है मैं recycleview-एकाधिक चयन करें उपयोग कर रहा था के रूप में निम्नलिखित पाने का चयन रद्द रूप में, यह है setSelectionModeStateListAnimator, setDefaultModeStateListAnimator, setSelectionModeBackgroundDrawable, setDefaultModeBackgroundDrawable सेट स्वैपिंगहोल्डर में तो af Ter धारक के लिए अपने सुपर कॉल सिर्फ सेट:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 
     setSelectionModeStateListAnimator(null); 
     setDefaultModeStateListAnimator(null); 
    } 
    // Default selection mode background drawable is this 
    setSelectionModeBackgroundDrawable(null); 
    setDefaultModeBackgroundDrawable(null); 

और XML में अपने ही चयनकर्ताओं का इस्तेमाल किया, इस दुर्घटना समाधान हो गया।

+0

कृपया अपने चयनकर्ताओं का कुछ नमूना कोड पोस्ट करें, उन्होंने कैसे देखा, और शायद आपने उन्हें कैसे कार्यान्वित किया। यह बढ़ते सैमसंग लॉलीपॉप समुदाय के लिए बहुत फायदेमंद होगा। – AlleyOOP

+0

मैं रीसायकलव्यू-मल्टीसेलेक्ट का भी उपयोग करता हूं और यह कुछ सेकंड के लिए कुछ आइटम पर लंबे समय तक क्लिक करने के बाद होता है। ध्यान दें कि यह एम्यूलेटर में ठीक है। @ chin87, क्या आप कुछ और जानकारी दे सकते हैं, कृपया? – WindRider

+0

@WindRider क्या आपने व्यूहोल्डर का उपयोग किया है? व्यूहोल्डर्स कन्स्ट्रक्टर में, सुपर कॉल के बाद उपरोक्त कोड – chin87

संबंधित मुद्दे

 संबंधित मुद्दे