我试图添加一个包含TabLayout视图的片段,但是我一直收到错误:
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.support.design.widget.TabLayout$Tab android.support.design.widget.TabLayout.newTab()' on a null object reference
at ca.rev.revcore.MainActivity.onCreate(MainActivity.java:76)这就是我要添加的布局:
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.TabLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/rev_tablayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:theme="@style/RevStyle_PlaceNewBagBttn">
<android.support.design.widget.TabItem
android:id="@+id/tabItem"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Tab1" />
</android.support.design.widget.TabLayout>我就是这么加进去的:
TabLayout tabLayout = (TabLayout) findViewById(R.id.rev_tablayout);
tabLayout.addTab(tabLayout.newTab().setText("Upload"));
tabLayout.addTab(tabLayout.newTab().setText("Pics"));
tabLayout.addTab(tabLayout.newTab().setText("Vids"));
tabLayout.addTab(tabLayout.newTab().setText("Papers"));
tabLayout.getTabAt(0).setIcon(R.drawable.ic_publish_black_24dp);
tabLayout.getTabAt(1).setIcon(R.drawable.ic_menu_camera);
tabLayout.getTabAt(2).setIcon(R.drawable.ic_videocam_black_24dp);
tabLayout.getTabAt(3).setIcon(R.drawable.ic_airplay_black_24dp);我错过了什么?
维伦湿透了我的身体。
发布于 2017-07-14 05:56:59
如果你在使用片段。变化
TabLayout tabLayout = (TabLayout) findViewById(R.id.rev_tablayout);至
TabLayout tabLayout = (TabLayout) view.findViewById(R.id.rev_tablayout);view是在onCreateView()方法中膨胀布局文件和返回视图的对象。
https://stackoverflow.com/questions/45095613
复制相似问题