【发布时间】:2019-11-29 17:43:50
【问题描述】:
我是安卓编程新手。我关注了来自 youtube 的视频,但我不断收到 java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Class java.lang.Object.getClass()' on a null object reference error at line49
我可以知道问题的原因吗?
public class main extends AppCompatActivity{
TextView tv_title;
Button btn_profile, btn_notification, btn_option;
TabLayout tabLayout;
ViewPager viewPager;
TabItem tabNews, tabScrim, tabTeam, tabReport;
mainadapter mmainadapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn_profile = findViewById(R.id.btn_main_profile);
btn_notification = findViewById(R.id.btn_main_notification);
btn_option = findViewById(R.id.btn_main_option);
tabLayout = findViewById(R.id.tabLayout);
tabNews = findViewById(R.id.tabMain);
tabScrim = findViewById(R.id.tabScrim);
tabTeam = findViewById(R.id.tabTeam);
tabReport = findViewById(R.id.tabReport);
viewPager = findViewById(R.id.viewPager);
tabLayout.setupWithViewPager(viewPager);
mmainadapter = new mainadapter(getSupportFragmentManager(), tabLayout.getTabCount());
viewPager.setAdapter(mmainadapter);
tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
@Override
public void onTabSelected(TabLayout.Tab tab) {
viewPager.setCurrentItem(tab.getPosition()); <<<<49
}
@Override
public void onTabUnselected(TabLayout.Tab
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
}
});
viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout));
}
}
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.scrimmagesystem, PID: 20764
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Class java.lang.Object.getClass()' on a null object reference
at android.support.v4.app.BackStackRecord.doAddOp(BackStackRecord.java:396)
at android.support.v4.app.BackStackRecord.add(BackStackRecord.java:391)
at android.support.v4.app.FragmentPagerAdapter.instantiateItem(FragmentPagerAdapter.java:107)
at android.support.v4.view.ViewPager.addNewItem(ViewPager.java:1010)
at android.support.v4.view.ViewPager.populate(ViewPager.java:1224)
at android.support.v4.view.ViewPager.setCurrentItemInternal(ViewPager.java:669)
at android.support.v4.view.ViewPager.setCurrentItemInternal(ViewPager.java:631)
at android.support.v4.view.ViewPager.setCurrentItem(ViewPager.java:612)
at com.example.scrimmagesystem.main$1.onTabSelected(main.java:49)
at android.support.design.widget.TabLayout.dispatchTabSelected(TabLayout.java:1608)
at android.support.design.widget.TabLayout.selectTab(TabLayout.java:1601)
at android.support.design.widget.TabLayout.selectTab(TabLayout.java:1569)
at android.support.design.widget.TabLayout$Tab.select(TabLayout.java:1874)
at android.support.design.widget.TabLayout$TabView.performClick(TabLayout.java:2059)
at android.view.View.performClickInternal(View.java:6635)
at android.view.View.access$3100(View.java:794)
at android.view.View$PerformClick.run(View.java:26199)
at android.os.Handler.handleCallback(Handler.java:907)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:216)
at android.app.ActivityThread.main(ActivityThread.java:7593)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:524)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:987)
提前致谢!
注意:编写的代码过多,无法编辑。 代码写多了需要多解释 代码写多了需要多解释
【问题讨论】:
-
该错误仅在我单击第二个选项卡时出现。第一个标签很好
标签: android android-viewpager fragment android-tablayout