【发布时间】:2019-07-24 14:54:17
【问题描述】:
我想制作一个导航抽屉,它是一个侧面菜单(当您向右滑动时会出现),您单击一个按钮,另一个菜单会弹出而不是在同一个侧面字段中。我在主菜单(即 Fragment1)的按钮上使用 setOnClickListener() 来弹出第二个菜单(即 Fragment2)。代码编译,但应用程序在开始时崩溃。
如何解决?也许还有其他方法可以制作这个菜单?
override fun onCreate(savedInstanceState: Bundle?)
{
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
loadF1(Frag1())
button1.setOnClickListener()
{
loadF2(Frag2())
}
}
编辑:
堆栈跟踪
com.example.test0 E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.test0, PID: 4903
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.test0/com.example.test0.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2817)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2892)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1593)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6541)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference
at com.example.test0.MainActivity.onCreate(MainActivity.kt:19)
at android.app.Activity.performCreate(Activity.java:6975)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1213)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2770)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2892)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1593)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6541)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
【问题讨论】:
-
发布堆栈跟踪。
标签: android android-studio android-fragments kotlin navigation-drawer