【发布时间】:2021-12-11 15:49:16
【问题描述】:
我正在使用 Layout 可组合在 Jetpack Compose 中显示一天时间线的自定义布局。结果看起来像Google's Calenar,代码类似于那个很棒的教程中描述的代码:https://danielrampelt.com/blog/jetpack-compose-custom-schedule-layout-part-1/
我的问题是:
我如何在Layout 可组合中接收(x,y)点击位置。通过将clickable 修饰符添加到placeables,我可以轻松地接收对Layout 子级的点击。但是,我的问题是,我如何接收在子项之间的布局空间上进行的点击位置
(根据前面提到的示例,这将是日期时间线中约会之间的空间。在这种情况下,我需要点击的位置来获取用户点击的时间信息)
我尝试在整个Layout 可组合中添加.clickable 修饰符,但我没有收到onClick lambda 中布局内点击的(x, y) 位置(它的类型是() -> Unit)
【问题讨论】:
-
你不应该同时问两个问题,因为其他人很难找到它。您的问题也与日历无关。见How do I ask a good question。你可以把你的问题一分为二。第一个可以是:“如何获得可点击位置?”。第二个可以是“如何让父视图点击包含多个可点击的子视图?”,这实际上取决于您的布局,因此您需要提供一个 minimal reproducible example 您遇到问题。
-
您可以将此问题编辑为其中一个,然后创建第二个。还有诸如“我将不胜感激任何形式的帮助,在此先感谢您”之类的短语。是多余的,不应使用,请参阅更多信息here。
-
@PhilipDukhov 好的,问题已更新
标签: android kotlin android-jetpack-compose android-jetpack