在片段中使用导航抽屉和工具栏

时间:2017-08-25 17:19:00

标签: android android-fragments material-design

我正在开发一个Android应用程序,我想在片段中使用工具栏和导航抽屉。我创建了一个名为 Supportclass 的内部类,然后在 onCreateView 方法中使用名为 setUptoolbar 的方法,但是我遇到了异常错误。 你觉得我应该怎么做?提前谢谢,抱歉我的英语不好。 :)

片段代码:

location / {
    proxy_pass http://$app_upstream$uri;
}

这是错误: java.lang.NullPointerException:尝试在空对象引用上调用虚方法'android.view.Window $ Callback android.view.Window.getCallback()'

2 个答案:

答案 0 :(得分:1)

你的做法完全错了。您可以在不定义扩展活动的新类的情况下执行此操作。您始终可以通过getActivity ()参考基础活动。即使您想保留引用,也只需使用MainActivity a = (MainActivity) getActivity (),假设您的片段已附加到MainActivity。然后在a上操作。您正在使用

收到该错误
SupportClass supportClass = new SupportClass();

使用Context.startActivity(Intent intent)开始活动。看来你不打算开始新的活动。您只想更改基础活动的属性。所以正如我上面所说的那样 MainActivity a = (MainActivity) getActivity ()并与a一样玩a.setSupportActionBar ()

答案 1 :(得分:0)

您使用的是错误的层次结构。正确的方法是:

  

活动 - >包含您的工具栏,抽屉和片段持有者(例如   框架布局或viewpager)

现在,如果你想从片段中的某个动作打开抽屉,你必须在片段中添加抽象事件监听器,它将由activity实现。

请参阅github上的此快速链接了解更多信息:http://guides.codepath.com/android/fragment-navigation-drawer