我正在尝试实现android导航抽屉,它是导航UI的一部分,但是在通过kotlin进行实现时,出现了一个错误,提示未解决的错误。
class HomeActivity : AppCompatActivity(){
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val appBarConfiguration = AppBarConfiguration(navController.graph, drawerLayout)
setContentView(R.layout.activityhome)
}
}
答案 0 :(得分:2)
根据Navigation Declaring Dependencies documentation,如果您使用Kotlin编写文档,则假定您正在使用-ktx
版本的依赖项。
AppBarConfiguration(NavGraph, Drawerlayout)
method是Kotlin扩展,仅在navigation-ui-ktx
依赖项中可用。
答案 1 :(得分:1)
如果您不想使用jetpack,可以使用它代替导航UI
val drawwerlayout = drawer_layout
val t = ActionBarDrawerToggle(this,drawwerlayout,R.string.drawer_open,R.string.drawer_close)
drawwerlayout.addDrawerListener(t)
t.syncState()
supportActionBar?.setDisplayHomeAsUpEnabled(true)
nav_view.setNavigationItemSelectedListener {
when(it.itemId)
{
R.id.logout -> {
Snackbar.make(homeLayout,"Logged out Clicked", Snackbar.LENGTH_SHORT).show()
}
}
drawwerlayout.closeDrawer(GravityCompat.START)
true
}