Android 使用Jetpack compose中的ModalDrawer从右到左打开导航抽屉
我一直在尝试在Jetpack compose中实现导航抽屉。下面的代码显示了一种简单的方法:Android 使用Jetpack compose中的ModalDrawer从右到左打开导航抽屉,android,navigation-drawer,android-jetpack-compose,Android,Navigation Drawer,Android Jetpack Compose,我一直在尝试在Jetpack compose中实现导航抽屉。下面的代码显示了一种简单的方法: @Composable fun ModalDrawerSample() { val drawerState = rememberDrawerState(DrawerValue.Closed) val scope = rememberCoroutineScope() ModalDrawer( drawerState = drawerState, d
@Composable
fun ModalDrawerSample() {
val drawerState = rememberDrawerState(DrawerValue.Closed)
val scope = rememberCoroutineScope()
ModalDrawer(
drawerState = drawerState,
drawerContent = {
Column {
Text("Text in Drawer")
Button(onClick = {
scope.launch {
drawerState.close()
}
}) {
Text("Close Drawer")
}
}
},
content = {
Column {
Text("Text in Bodycontext")
Button(onClick = {
scope.launch {
drawerState.open()
}
}) {
Text("Click to open")
}
}
}
)
}
但是如何使导航抽屉从右向左打开?您可以使用提供布局方向.Rtl
值
比如:
CompositionLocalProvider(LocalLayoutDirection provides LayoutDirection.Rtl ) {
ModalDrawer(
drawerState = drawerState,
drawerContent = { /* ...*/ },
content = { /* ..*/ }
)
}
这样做也导致我的布局从右向左颠倒。通过在内容参数中额外使用“CompositionLocalProvider(LocalLayoutDirection提供LayoutDirection.Ltr)”解决了这个问题。