【问题标题】:Making TextField Scrollable in Jetpack Compose在 Jetpack Compose 中使 TextField 可滚动
【发布时间】:2021-10-19 15:44:59
【问题描述】:

我正在使用 Android Jetpack Compose。

我在一个Column 中有三个TextField。我希望第三个和/或最后一个文本字段可以滚动。我该怎么做?

【问题讨论】:

    标签: android-jetpack-compose


    【解决方案1】:

    TextFieldhorizontalScroll 的示例

        @Composable
        fun Test() {
            TextField(
                value = "long1 long2 long3 long4 long5 long6 long7 long8 long9 long10 long11 long12 text",
                onValueChange = {},
                singleLine = true,
                modifier = Modifier
                    .fillMaxWidth()
                    .horizontalScroll(rememberScrollState())
            )
        }
    

    TextFieldscrollable 的示例

        @Composable
        fun Test() {
            var offset by remember { mutableStateOf(0f) }
            TextField(value = "long1 long2 long3 long4 long5 long6 long7 long8 long9 long10 long11 long12 text",
                onValueChange = {},
                singleLine = true,
                modifier = Modifier
                    .fillMaxWidth()
                    .scrollable(
                        orientation = Orientation.Horizontal,
                        state = rememberScrollableState { delta ->
                            offset += delta
                            delta
                        }
                    )
            )
        }
    

    那里有更多信息 https://developer.android.com/jetpack/compose/gestures?authuser=1#scrollable-modifier.

    【讨论】:

    • 太好了,谢谢。我为此挣扎了一段时间。非常感谢,现在一切正常。
    • 更好的是,您可以使用horizontalScroll 修饰符而不是原始的scrollable 修饰符。就像这样Modifier.horizontalScroll(rememberScrollState())
    • @JerryApplegarth 那么请接受答案
    猜你喜欢
    • 2022-08-18
    • 1970-01-01
    • 2021-11-14
    • 2021-05-26
    • 2022-10-23
    • 1970-01-01
    • 2023-01-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多