Android ViewPagerStatapter NullPointerException
当用户从抽屉列表中选择项目时,我想在寻呼机中显示详细信息数据, 但是mViewPager.setAdapter(mChaptersPagerAdapter)的代码崩溃; 并说:java.lang.NullPointerException 而当我调试代码mViewPager not null和mChaptersPagerAdapter not null时 主要活动Android ViewPagerStatapter NullPointerException,android,android-layout,android-fragments,Android,Android Layout,Android Fragments,当用户从抽屉列表中选择项目时,我想在寻呼机中显示详细信息数据, 但是mViewPager.setAdapter(mChaptersPagerAdapter)的代码崩溃; 并说:java.lang.NullPointerException 而当我调试代码mViewPager not null和mChaptersPagerAdapter not null时 主要活动 public class MainActivity extends FragmentActivity implements reway
public class MainActivity extends FragmentActivity implements rewaya.books.hadithbrowser.Listener.OnItemSelectedListener {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
this.getActionBar().setBackgroundDrawable(
new ColorDrawable(Color.BLACK));
listener = (rewaya.books.hadithbrowser.Listener.OnItemSelectedListener) this;
mTitle = mDrawerTitle = getTitle();
mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
mDrawerList = (ExpandableListView) findViewById(R.id.left_drawer);
mChaptersPagerAdapter = new ChaptersPagerAdapter(
getSupportFragmentManager());
mViewPager = (ViewPager) findViewById(R.id.pager);
mViewPager.setAdapter(mChaptersPagerAdapter);
:
}
activity_main.xml
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v4.view.ViewPager
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<!--
This title strip will display the currently visible page title, as well as the page
titles for adjacent pages.
-->
<android.support.v4.view.PagerTitleStrip
android:id="@+id/pager_title_strip"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="top"
android:background="#33b5e5"
android:paddingBottom="4dp"
android:paddingTop="4dp"
android:textColor="#fff" />
</android.support.v4.view.ViewPager>
<ExpandableListView
android:id="@+id/left_drawer"
android:layout_width="240dp"
android:layout_height="match_parent"
android:choiceMode="singleChoice"
android:cacheColorHint="#00000000"
android:layout_gravity="right"
/>
</LinearLayout>
</android.support.v4.widget.DrawerLayout>
日志堆栈
11-30 18:04:14.039: I/dalvikvm(30941): Debugger is active
11-30 18:04:14.064: I/System.out(30941): Debugger has connected
11-30 18:04:14.069: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:14.274: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:14.474: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:14.674: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:14.874: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:15.074: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:15.269: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:15.474: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:15.674: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:15.874: I/System.out(30941): debugger has settled (1439)
11-30 18:04:16.199: D/dalvikvm(30941): GC_FOR_ALLOC freed 70K, 3% free 9186K/9411K, paused 18ms
11-30 18:04:16.204: I/dalvikvm-heap(30941): Grow heap (frag case) to 10.519MB for 1536016-byte allocation
11-30 18:04:16.239: D/dalvikvm(30941): GC_CONCURRENT freed 1K, 3% free 10684K/10951K, paused 2ms+1ms
11-30 18:04:16.279: D/dalvikvm(30941): GC_FOR_ALLOC freed 0K, 3% free 10685K/10951K, paused 9ms
11-30 18:04:16.284: I/dalvikvm-heap(30941): Grow heap (frag case) to 13.814MB for 3456016-byte allocation
11-30 18:04:16.304: D/dalvikvm(30941): GC_CONCURRENT freed 0K, 2% free 14060K/14343K, paused 2ms+1ms
11-30 18:04:16.404: D/libEGL(30941): loaded /system/lib/egl/libEGL_mali.so
11-30 18:04:16.409: D/libEGL(30941): loaded /system/lib/egl/libGLESv1_CM_mali.so
11-30 18:04:16.409: D/libEGL(30941): loaded /system/lib/egl/libGLESv2_mali.so
11-30 18:04:16.414: D/(30941): Device driver API match
11-30 18:04:16.414: D/(30941): Device driver API version: 10
11-30 18:04:16.414: D/(30941): User space API version: 10
11-30 18:04:16.414: D/(30941): mali: REVISION=Linux-r2p4-02rel0 BUILD_DATE=Mon Mar 5 09:47:55 KST 2012
11-30 18:04:16.424: D/OpenGLRenderer(30941): Enabling debug mode 0
11-30 18:04:16.559: D/CLIPBOARD(30941): Hide Clipboard dialog at Starting input: finished by someone else... !
11-30 18:04:33.799: D/AndroidRuntime(30941): Shutting down VM
11-30 18:04:33.799: W/dalvikvm(30941): threadid=1: thread exiting with uncaught exception (group=0x40c791f8)
11-30 18:04:33.919: E/AndroidRuntime(30941): FATAL EXCEPTION: main
11-30 18:04:33.919: E/AndroidRuntime(30941): java.lang.RuntimeException: Unable to start activity ComponentInfo{rewaya.books.hadithbrowser/rewaya.books.hadithbrowser.MainActivity}: java.lang.NullPointerException
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1968)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1993)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.app.ActivityThread.access$600(ActivityThread.java:127)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1159)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.os.Handler.dispatchMessage(Handler.java:99)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.os.Looper.loop(Looper.java:137)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.app.ActivityThread.main(ActivityThread.java:4507)
11-30 18:04:33.919: E/AndroidRuntime(30941): at java.lang.reflect.Method.invokeNative(Native Method)
11-30 18:04:33.919: E/AndroidRuntime(30941): at java.lang.reflect.Method.invoke(Method.java:511)
11-30 18:04:33.919: E/AndroidRuntime(30941): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
11-30 18:04:33.919: E/AndroidRuntime(30941): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
11-30 18:04:33.919: E/AndroidRuntime(30941): at dalvik.system.NativeStart.main(Native Method)
11-30 18:04:33.919: E/AndroidRuntime(30941): Caused by: java.lang.NullPointerException
11-30 18:04:33.919: E/AndroidRuntime(30941): at rewaya.books.hadithbrowser.MainActivity$ChaptersPagerAdapter.getCount(MainActivity.java:408)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.support.v4.view.ViewPager.setAdapter(ViewPager.java:434)
11-30 18:04:33.919: E/AndroidRuntime(30941): at rewaya.books.hadithbrowser.MainActivity.onCreate(MainActivity.java:96)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.app.Activity.performCreate(Activity.java:4465)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1052)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1932)
11-30 18:04:33.919: E/AndroidRuntime(30941): ... 11 more
发布堆栈跟踪。请使用post检查您的
mFragmentArray
为空。在调用setAdapter()
之前是否对其进行了初始化?MFFragmentArray在哪里?
11-30 18:04:14.039: I/dalvikvm(30941): Debugger is active
11-30 18:04:14.064: I/System.out(30941): Debugger has connected
11-30 18:04:14.069: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:14.274: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:14.474: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:14.674: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:14.874: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:15.074: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:15.269: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:15.474: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:15.674: I/System.out(30941): waiting for debugger to settle...
11-30 18:04:15.874: I/System.out(30941): debugger has settled (1439)
11-30 18:04:16.199: D/dalvikvm(30941): GC_FOR_ALLOC freed 70K, 3% free 9186K/9411K, paused 18ms
11-30 18:04:16.204: I/dalvikvm-heap(30941): Grow heap (frag case) to 10.519MB for 1536016-byte allocation
11-30 18:04:16.239: D/dalvikvm(30941): GC_CONCURRENT freed 1K, 3% free 10684K/10951K, paused 2ms+1ms
11-30 18:04:16.279: D/dalvikvm(30941): GC_FOR_ALLOC freed 0K, 3% free 10685K/10951K, paused 9ms
11-30 18:04:16.284: I/dalvikvm-heap(30941): Grow heap (frag case) to 13.814MB for 3456016-byte allocation
11-30 18:04:16.304: D/dalvikvm(30941): GC_CONCURRENT freed 0K, 2% free 14060K/14343K, paused 2ms+1ms
11-30 18:04:16.404: D/libEGL(30941): loaded /system/lib/egl/libEGL_mali.so
11-30 18:04:16.409: D/libEGL(30941): loaded /system/lib/egl/libGLESv1_CM_mali.so
11-30 18:04:16.409: D/libEGL(30941): loaded /system/lib/egl/libGLESv2_mali.so
11-30 18:04:16.414: D/(30941): Device driver API match
11-30 18:04:16.414: D/(30941): Device driver API version: 10
11-30 18:04:16.414: D/(30941): User space API version: 10
11-30 18:04:16.414: D/(30941): mali: REVISION=Linux-r2p4-02rel0 BUILD_DATE=Mon Mar 5 09:47:55 KST 2012
11-30 18:04:16.424: D/OpenGLRenderer(30941): Enabling debug mode 0
11-30 18:04:16.559: D/CLIPBOARD(30941): Hide Clipboard dialog at Starting input: finished by someone else... !
11-30 18:04:33.799: D/AndroidRuntime(30941): Shutting down VM
11-30 18:04:33.799: W/dalvikvm(30941): threadid=1: thread exiting with uncaught exception (group=0x40c791f8)
11-30 18:04:33.919: E/AndroidRuntime(30941): FATAL EXCEPTION: main
11-30 18:04:33.919: E/AndroidRuntime(30941): java.lang.RuntimeException: Unable to start activity ComponentInfo{rewaya.books.hadithbrowser/rewaya.books.hadithbrowser.MainActivity}: java.lang.NullPointerException
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1968)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1993)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.app.ActivityThread.access$600(ActivityThread.java:127)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1159)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.os.Handler.dispatchMessage(Handler.java:99)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.os.Looper.loop(Looper.java:137)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.app.ActivityThread.main(ActivityThread.java:4507)
11-30 18:04:33.919: E/AndroidRuntime(30941): at java.lang.reflect.Method.invokeNative(Native Method)
11-30 18:04:33.919: E/AndroidRuntime(30941): at java.lang.reflect.Method.invoke(Method.java:511)
11-30 18:04:33.919: E/AndroidRuntime(30941): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
11-30 18:04:33.919: E/AndroidRuntime(30941): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
11-30 18:04:33.919: E/AndroidRuntime(30941): at dalvik.system.NativeStart.main(Native Method)
11-30 18:04:33.919: E/AndroidRuntime(30941): Caused by: java.lang.NullPointerException
11-30 18:04:33.919: E/AndroidRuntime(30941): at rewaya.books.hadithbrowser.MainActivity$ChaptersPagerAdapter.getCount(MainActivity.java:408)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.support.v4.view.ViewPager.setAdapter(ViewPager.java:434)
11-30 18:04:33.919: E/AndroidRuntime(30941): at rewaya.books.hadithbrowser.MainActivity.onCreate(MainActivity.java:96)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.app.Activity.performCreate(Activity.java:4465)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1052)
11-30 18:04:33.919: E/AndroidRuntime(30941): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1932)
11-30 18:04:33.919: E/AndroidRuntime(30941): ... 11 more