سؤال

آمل حقًا أن يساعدني شخص ما في هذا الأمر. لقد عالقت عليه إلى الأبد. في بعض الأحيان ، عندما يستخدم شخص ما تطبيقي ، فإنه سيغلق مع هذا الاستثناء:

java.lang.ArrayIndexOutOfBoundsException
    at android.widget.AbsListView$RecycleBin.addScrapView(AbsListView.java:3572)
    at android.widget.AbsListView.trackMotionScroll(AbsListView.java:2487)
    at android.widget.AbsListView.onTouchEvent(AbsListView.java:2001)
    at android.widget.ListView.onTouchEvent(ListView.java:3234)
    at android.view.View.dispatchTouchEvent(View.java:3709)
    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:874)
    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:924)
    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:924)
    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:924)
    at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1695)
    at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1116)
    at android.app.Activity.dispatchTouchEvent(Activity.java:2068)
    at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1679)
    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:924)
    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:924)
    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:924)
    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:924)
    at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:924)
    at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1695)
    at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1116)
    at android.app.Activity.dispatchTouchEvent(Activity.java:2068)
    at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1679)
    at android.view.ViewRoot.handleMessage(ViewRoot.java:1697)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:123)
    at android.app.ActivityThread.main(ActivityThread.java:4568)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:521)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
    at dalvik.system.NativeStart.main(Native Method)

ومع ذلك ، لا يمكنني معرفة السبب. إنه نادر نسبيًا ، غير قابل للإنقاذ ، و StackTrace غير مفيد تمامًا لأنه لا يشمل أيًا من الكود الخاص بي.

هل هو خطأ في Android نفسه؟

هل كانت مفيدة؟

المحلول

ما هو إصدار Android الذي تقوم بتشغيله؟ من ما يمكنني قوله أن محولك هو إرجاع العدد الخاطئ من GetViewTyPecount () (أو تقوم بتغيير عدد نوع العرض ديناميكيًا وهو خطأ كبير.)

نصائح أخرى

بالإضافة إلى ماذا رومان قال ، يبدو أنه من المهم أن يكون أكبر نوع عرض أصغر من عدد نوع العرض.

كان لدي نوعان من الرؤية محددة (لأي سبب من الأسباب) مع 1 و 2 و عاد 2 في getViewTypeCount() الذي أعطاني نفس الاستثناء أعلاه. إعادة الفهرسة الأنواع إلى 0 و 1 تم إصلاح القضية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top