首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何修复jetpack撰写中包含Balloon(给出奇怪结果)的ConstraintLayout?

如何修复jetpack撰写中包含Balloon(给出奇怪结果)的ConstraintLayout?
EN

Stack Overflow用户
提问于 2022-05-27 19:00:38
回答 1查看 103关注 0票数 0

我正试图在我的第一个应用程序中弹出一个帮助。弹出工作后出现的问题是,我使用的图标变成了一个按钮,占用了整个屏幕的高度。我正在使用jetpack中为气球弹出找到的唯一代码。在添加BalloonAnchor之前,布局是很好的。这是代码:

代码语言:javascript
复制
@Composable
fun GiveHelp(helpText: String) {
Surface{
    val context = LocalContext.current
    val lifecycleOwner = LocalLifecycleOwner.current

    ConstraintLayout {
        val (icon, text) = createRefs()
        Icon(
            modifier = Modifier
                .constrainAs(icon) {
                    top.linkTo(parent.top)
                    start.linkTo(parent.start)
                },
            painter = painterResource(id = R.drawable.ic_help),
            contentDescription = "help Icon"
        )
        Text(
            modifier = Modifier
                .constrainAs(text) {
                    top.linkTo(icon.top)
                    start.linkTo(icon.end)
                    bottom.linkTo(icon.bottom)
                }
                .padding(horizontal = 10.dp),
            text = "Is your task:"
        )
        BalloonAnchor(
            reference = icon,
            modifier = Modifier
                .aspectRatio(0.1f),
            balloon = BalloonUtils.getTitleBalloon(
                context = context,
                title = helpText,
                lifecycle = lifecycleOwner
            ),
            onAnchorClick = { balloon, anchor -> balloon.showAlignTop(anchor) }
        )
    }
}
} 
EN

回答 1

Stack Overflow用户

发布于 2022-06-29 10:55:34

这里的问题是您在BalloonAnchor.的修饰符中使用的aspectRatio试试像Modifier.aspectRatio(0.99f)这样的东西。使用这个,你的图标不会占据整个屏幕的高度。

,您可以使用下面的代码来获得理想的外观。

代码语言:javascript
复制
BalloonAnchor(
    reference = icon,
    modifier = Modifier
        .height(40.dp),
    balloon = BalloonUtils.getTitleBalloon(
        context = context,
        title = helpText,
        lifecycle = lifecycleOwner
    ),
    onAnchorClick = { balloon, anchor -> balloon.showAlignTop(anchor) }
)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72409980

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档