当通过 Viewpagers 滑动它的工作完美时,我在BaseAdapter的getView()方法上使用ViewPagers的setId()方法完成了。
实现代码类似于这个线程,我在这里找到: On This Post
在创建每个 ViewPager 的对象后添加 setId(position+1)。
但是当我开始滚动列表(水平)时,应用程序崩溃了,显示以下 Logcat 中的错误:
06-18 21:06:55.020: E/AndroidRuntime(1928): 致命异常: main 06-18 21:06:55.020: E/AndroidRuntime(1928): android.content.res.Resources$NotFoundException: 找不到资源ID #0x7 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 android.content.res.Resources.getResourceName(Resources.java:1653) 06-18 21:06:55.020: E/AndroidRuntime(1928 ): 在 android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:903) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 android.support.v4.app.FragmentManagerImpl.moveToState( FragmentManager.java:1088) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 android.support.v4.app.BackStackRecord.run(BackStackRecord.java:682) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1444) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 android.support.v4.app.FragmentManagerImpl.executePendingTransactions(FragmentManager.java:461) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 android.support .v4.app.FragmentPagerAdapter.finishUpdate(FragmentPagerAdapter.java:141) 06-18 21:06:55.020: E/AndroidRuntime(1928): atandroid.support.v4.view.ViewPager.populate(ViewPager.java:1064) 06 -18 21:06:55.020: E/AndroidRuntime(1928): 在 android.support.v4.view.ViewPager.populate(ViewPager.java:911) 06-18 21:06:55.020: E/AndroidRuntime(1928):在 android.support.v4.view.ViewPager.setAdapter(ViewPager.java:440) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 com.example.democardswipelistview.CustomSwipeAdapter.getView(CustomSwipeAdapter.java: 72) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 android.widget.AbsListView。获得视图(AbsListView.java:2012) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 android.widget.ListView.makeAndAddView(ListView.java:1772) 06-18 21:06:55.020: E/ AndroidRuntime(1928): 在 android.widget.ListView.fillUp(ListView.java:705) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 android.widget.ListView.fillGap(ListView.java:645 ) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 android.widget.AbsListView.trackMotionScroll(AbsListView.java:4546) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 android .widget.AbsListView$FlingRunnable.run(AbsListView.java:3813) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 android.os.Handler.handleCallback(Handler.java:605) 06-18 21 :06:55.020: E/AndroidRuntime(1928): 在 android.os.Handler.dispatchMessage(Handler.java:92) 06-18 21:06:55.020: E/AndroidRuntime(1928):在 android.os.Looper.loop(Looper.java:137) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 android.app.ActivityThread.main(ActivityThread.java:4424) 06-18 21 :06:55.020: E/AndroidRuntime(1928): at java.lang.reflect.Method.invokeNative(Native Method) 06-18 21:06:55.020: E/AndroidRuntime(1928): at java.lang.reflect.Method .invoke(Method.java:511) 06-18 21:06:55.020: E/AndroidRuntime(1928): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 06-18 21 :06:55.020: E/AndroidRuntime(1928): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 dalvik。 system.NativeStart.main(本机方法)main(ActivityThread.java:4424) 06-18 21:06:55.020: E/AndroidRuntime(1928): at java.lang.reflect.Method.invokeNative(Native Method) 06-18 21:06:55.020: E/AndroidRuntime (1928): 在 java.lang.reflect.Method.invoke(Method.java:511) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller。运行(ZygoteInit.java:784)06-18 21:06:55.020:E/AndroidRuntime(1928):在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)06-18 21:06: 55.020:E/AndroidRuntime(1928):在 dalvik.system.NativeStart.main(本机方法)main(ActivityThread.java:4424) 06-18 21:06:55.020: E/AndroidRuntime(1928): at java.lang.reflect.Method.invokeNative(Native Method) 06-18 21:06:55.020: E/AndroidRuntime (1928): 在 java.lang.reflect.Method.invoke(Method.java:511) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller。运行(ZygoteInit.java:784)06-18 21:06:55.020:E/AndroidRuntime(1928):在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)06-18 21:06: 55.020:E/AndroidRuntime(1928):在 dalvik.system.NativeStart.main(本机方法)E/AndroidRuntime(1928): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 com.android.internal .os.ZygoteInit.main(ZygoteInit.java:551) 06-18 21:06:55.020: E/AndroidRuntime(1928): at dalvik.system.NativeStart.main(Native Method)E/AndroidRuntime(1928): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 06-18 21:06:55.020: E/AndroidRuntime(1928): 在 com.android.internal .os.ZygoteInit.main(ZygoteInit.java:551) 06-18 21:06:55.020: E/AndroidRuntime(1928): at dalvik.system.NativeStart.main(Native Method)