无法在Android中向TabLayout添加选项卡
我正在开发一个Android应用程序。在我的应用程序中,我需要使用标签。但当我在代码中将标签添加到TabLayout时,它抛出了错误。我的代码有什么问题 这是自定义操作栏中的tablayout XML:无法在Android中向TabLayout添加选项卡,android,android-tabs,android-tablayout,Android,Android Tabs,Android Tablayout,我正在开发一个Android应用程序。在我的应用程序中,我需要使用标签。但当我在代码中将标签添加到TabLayout时,它抛出了错误。我的代码有什么问题 这是自定义操作栏中的tablayout XML: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="m
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<RelativeLayout
android:background="@color/colorPrimary"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="@dimen/action_bar_padding_top"
android:paddingBottom="@dimen/action_bar_padding_bottom"
android:paddingLeft="@dimen/action_bar_padding_left"
android:paddingRight="@dimen/action_bar_padding_right">
<ImageButton
android:id="@+id/open_left_drawer_icon"
android:background="@drawable/nav_open"
android:layout_width="@dimen/nav_icon_width"
android:layout_height="@dimen/nav_icon_height" />
<TextView
android:layout_centerHorizontal="true"
android:text="@string/app_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="@dimen/main_logo_text_size"/>
<ImageButton
android:layout_alignParentRight="true"
android:background="@drawable/wishlist_icon"
android:layout_width="@dimen/nav_icon_width"
android:layout_height="@dimen/nav_icon_height" />
</RelativeLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.design.widget.TabLayout
android:id="@+id/tab_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/main_tab_layout"
android:background="?attr/colorPrimary"
android:elevation="6dp"
android:minHeight="?attr/actionBarSize" />
</LinearLayout> </LinearLayout>
这是我运行应用程序时logacat中的错误:
03-10 12:52:12.610 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion W/dalvikvm: VFY: unable to resolve virtual method 496: Landroid/content/res/TypedArray;.getType (I)I
03-10 12:52:12.610 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm: VFY: replacing opcode 0x6e at 0x0002
03-10 12:52:12.618 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm: GC_FOR_ALLOC freed 143K, 10% free 2617K/2892K, paused 3ms, total 4ms
03-10 12:52:12.670 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm: GC_FOR_ALLOC freed 21K, 10% free 2870K/3168K, paused 1ms, total 2ms
03-10 12:52:12.706 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm: GC_FOR_ALLOC freed 98K, 12% free 2992K/3392K, paused 3ms, total 3ms
03-10 12:52:12.710 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion I/dalvikvm-heap: Grow heap (frag case) to 4.121MB for 1127532-byte allocation
03-10 12:52:12.718 7428-7430/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm: GC_CONCURRENT freed <1K, 9% free 4093K/4496K, paused 2ms+1ms, total 7ms
03-10 12:52:12.722 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm: GC_FOR_ALLOC freed <1K, 9% free 4094K/4496K, paused 2ms, total 2ms
03-10 12:52:12.726 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion I/dalvikvm-heap: Grow heap (frag case) to 6.541MB for 2536932-byte allocation
03-10 12:52:12.734 7428-7430/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm: GC_CONCURRENT freed 0K, 6% free 6571K/6976K, paused 1ms+1ms, total 4ms
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion D/AndroidRuntime: Shutting down VM
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion W/dalvikvm: threadid=1: thread exiting with uncaught exception (group=0xa61d4908)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: FATAL EXCEPTION: main
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.blog.waiyanhein.mmfashion.mmfashion/com.blog.waiyanhein.mmfashion.mmfashion.MainActivity}: java.lang.NullPointerException
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2180)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread.access$600(ActivityThread.java:141)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.os.Looper.loop(Looper.java:137)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:5041)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at java.lang.reflect.Method.invokeNative(Native Method)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at java.lang.reflect.Method.invoke(Method.java:511)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at dalvik.system.NativeStart.main(Native Method)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: Caused by: java.lang.NullPointerException
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at com.blog.waiyanhein.mmfashion.mmfashion.MainActivity.setupTabs(MainActivity.java:395)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at com.blog.waiyanhein.mmfashion.mmfashion.MainActivity.onCreate(MainActivity.java:98)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.Activity.performCreate(Activity.java:5104)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread.access$600(ActivityThread.java:141)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.os.Looper.loop(Looper.java:137)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:5041)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at java.lang.reflect.Method.invokeNative(Native Method)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at java.lang.reflect.Method.invoke(Method.java:511)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at dalvik.system.NativeStart.main(Native Method)
03-10 12:52:12.778 396-407/system_process W/ActivityManager: Force finishing activity com.blog.waiyanhein.mmfashion.mmfashion/.MainActivity
03-10 12:52:12.898 396-407/system_process D/dalvikvm: GC_FOR_ALLOC freed 175K, 35% free 6244K/9560K, paused 16ms, total 16ms
03-10 12:52:12.898 396-407/system_process I/dalvikvm-heap: Grow heap (frag case) to 7.042MB for 856092-byte allocation
03-10 12:52:12.910 396-411/system_process D/dalvikvm: GC_FOR_ALLOC freed 4K, 32% free 7075K/10400K, paused 12ms, total 12ms
03-10 12:52:12.938 396-399/system_process D/dalvikvm: GC_CONCURRENT freed 7K, 31% free 7191K/10400K, paused 9ms+1ms, total 28ms
03-10 12:52:12.938 396-412/system_process D/dalvikvm: WAIT_FOR_CONCURRENT_GC blocked 4ms
03-10 12:52:12.610 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion W/dalvikvm:VFY:无法解析虚拟方法496:Landroid/content/res/TypedArray;。getType(I)I
03-10 12:52:12.610 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm:VFY:在0x0002处替换操作码0x6e
03-10 12:52:12.618 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm:GC_FOR_ALLOC freed 143K,10%free 2617K/2892K,暂停3ms,总计4ms
03-10 12:52:12.670 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm:GC_FOR_ALLOC freed 21K,10%free 2870K/3168K,暂停1ms,总计2ms
03-10 12:52:12.706 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm:GC_FOR_ALLOC freed 98K,12%free 2992K/3392K,暂停3ms,总计3ms
03-10 12:52:12.710 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion I/dalvikvm堆:将堆(frag大小写)增长到4.121MB,用于1127532字节分配
03-10 12:52:12.718 7428-7430/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm:GC_CONCURRENT freed您在xml中的TabLayout的id是@+id/tab_layout”
,但您在活动中找到了id为main_tab_layout
的视图
行tabLayout=(tabLayout)findViewById(R.id.main\u tab\u布局);
它应该是tabLayout=(tabLayout)findViewById(R.id.tab_layout);
我相信您引用了错误的tabLayout
您在xml中定义了android:id=“@+id/tab_布局”,但您正在查找tabLayout=(tabLayout)findViewById(R.id.main_tab_布局)
尝试将findViewById(R.id.main_选项卡_布局)更改为findViewById(R.id.tab_布局)
如果这不起作用,您可以包含XML的其余部分吗
03-10 12:52:12.610 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion W/dalvikvm: VFY: unable to resolve virtual method 496: Landroid/content/res/TypedArray;.getType (I)I
03-10 12:52:12.610 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm: VFY: replacing opcode 0x6e at 0x0002
03-10 12:52:12.618 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm: GC_FOR_ALLOC freed 143K, 10% free 2617K/2892K, paused 3ms, total 4ms
03-10 12:52:12.670 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm: GC_FOR_ALLOC freed 21K, 10% free 2870K/3168K, paused 1ms, total 2ms
03-10 12:52:12.706 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm: GC_FOR_ALLOC freed 98K, 12% free 2992K/3392K, paused 3ms, total 3ms
03-10 12:52:12.710 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion I/dalvikvm-heap: Grow heap (frag case) to 4.121MB for 1127532-byte allocation
03-10 12:52:12.718 7428-7430/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm: GC_CONCURRENT freed <1K, 9% free 4093K/4496K, paused 2ms+1ms, total 7ms
03-10 12:52:12.722 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm: GC_FOR_ALLOC freed <1K, 9% free 4094K/4496K, paused 2ms, total 2ms
03-10 12:52:12.726 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion I/dalvikvm-heap: Grow heap (frag case) to 6.541MB for 2536932-byte allocation
03-10 12:52:12.734 7428-7430/com.blog.waiyanhein.mmfashion.mmfashion D/dalvikvm: GC_CONCURRENT freed 0K, 6% free 6571K/6976K, paused 1ms+1ms, total 4ms
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion D/AndroidRuntime: Shutting down VM
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion W/dalvikvm: threadid=1: thread exiting with uncaught exception (group=0xa61d4908)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: FATAL EXCEPTION: main
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.blog.waiyanhein.mmfashion.mmfashion/com.blog.waiyanhein.mmfashion.mmfashion.MainActivity}: java.lang.NullPointerException
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2180)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread.access$600(ActivityThread.java:141)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.os.Looper.loop(Looper.java:137)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:5041)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at java.lang.reflect.Method.invokeNative(Native Method)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at java.lang.reflect.Method.invoke(Method.java:511)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at dalvik.system.NativeStart.main(Native Method)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: Caused by: java.lang.NullPointerException
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at com.blog.waiyanhein.mmfashion.mmfashion.MainActivity.setupTabs(MainActivity.java:395)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at com.blog.waiyanhein.mmfashion.mmfashion.MainActivity.onCreate(MainActivity.java:98)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.Activity.performCreate(Activity.java:5104)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread.access$600(ActivityThread.java:141)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.os.Looper.loop(Looper.java:137)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:5041)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at java.lang.reflect.Method.invokeNative(Native Method)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at java.lang.reflect.Method.invoke(Method.java:511)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
03-10 12:52:12.774 7428-7428/com.blog.waiyanhein.mmfashion.mmfashion E/AndroidRuntime: at dalvik.system.NativeStart.main(Native Method)
03-10 12:52:12.778 396-407/system_process W/ActivityManager: Force finishing activity com.blog.waiyanhein.mmfashion.mmfashion/.MainActivity
03-10 12:52:12.898 396-407/system_process D/dalvikvm: GC_FOR_ALLOC freed 175K, 35% free 6244K/9560K, paused 16ms, total 16ms
03-10 12:52:12.898 396-407/system_process I/dalvikvm-heap: Grow heap (frag case) to 7.042MB for 856092-byte allocation
03-10 12:52:12.910 396-411/system_process D/dalvikvm: GC_FOR_ALLOC freed 4K, 32% free 7075K/10400K, paused 12ms, total 12ms
03-10 12:52:12.938 396-399/system_process D/dalvikvm: GC_CONCURRENT freed 7K, 31% free 7191K/10400K, paused 9ms+1ms, total 28ms
03-10 12:52:12.938 396-412/system_process D/dalvikvm: WAIT_FOR_CONCURRENT_GC blocked 4ms