Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/223.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 使用Jetpack compose中的ModalDrawer从右到左打开导航抽屉_Android_Navigation Drawer_Android Jetpack Compose - Fatal编程技术网

Android 使用Jetpack compose中的ModalDrawer从右到左打开导航抽屉

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

我一直在尝试在Jetpack compose中实现导航抽屉。下面的代码显示了一种简单的方法:

@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)”解决了这个问题。