【发布时间】:2018-04-11 17:23:40
【问题描述】:
如何在 kotlin 语言的片段中调用 setSupportActionBar。
我有一个带有导航抽屉的 mainActivity。当我单击导航抽屉的第一项时,它应该打开一个 notesFragment 。我想为 notesFragment 设置一个工具栏。当我尝试使用AppCompatActivity().setSupportActionBar(toolbar_top) 时,当我单击导航抽屉的第一项时应用程序崩溃,并出现错误
java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法 'android.view.Window$Callback android.view.Window.getCallback()'
class notesFragment:Fragment(){
override fun onCreateView(inflater: LayoutInflater?, container: ViewGroup?, savedInstanceState: Bundle?): View? {
AppCompatActivity().setSupportActionBar(toolbar_top)
AppCompatActivity().getSupportActionBar()!!.setDisplayShowTitleEnabled(false)
fragments()
AppCompatActivity().getSupportActionBar()!!.setDisplayHomeAsUpEnabled(true)
return inflater!!.inflate(R.layout.main_fragment,null)
}
fun fragments() {
var tabLayout=tab
var viewPager=viewPager
var adapter=viewPagerAdapterMainActivity(AppCompatActivity().supportFragmentManager)
adapter.addFragment(firstFragment(),"first")
adapter.addFragment(secondFragment(),"second")
adapter.addFragment(thirdFragment(),"third")
viewPager.adapter=adapter
tabLayout.setupWithViewPager(viewPager)
}
}
【问题讨论】:
-
您能分享一下您到目前为止所做的尝试以便我们为您提供帮助吗?