gpt4 book ai didi

android - 如何在不挤压的情况下将 View 与另一个 View 对齐

转载 作者:行者123 更新时间:2023-11-29 19:29:34 24 4
gpt4 key购买 nike

当然这是一个常见的用例,但我似乎无法用 LinearLayout(或 RelativeLayout)解决它,但也许我遗漏了一些东西。

最好用图片解释:

enter image description here

我有一个基本的 TextView 聊天气泡,另一个 TextView 右对齐(消息的时间戳)。

两者都是wrap_content(但时间戳可以精确设置为40dp,但似乎并不重要)。

现在在第一条(顶部)消息中它很短,因此您可以看到右侧的 View 。

但在第二个字符串很长,所以 wrap_content 占据了手机的整个宽度,将时间戳 textview 推出屏幕(水平线性布局,但相对 toRightOf 做同样的事情)

那么我如何放置一个与另一个 View 右对齐的时间戳,但时间戳的大小将得到保证(不是换行/挤压 - 而是消息气泡字符串换行)

(我意识到我可以使用 RTL 布局,但我有来自双方的消息,所以在其他情况下我需要 LTR + min sdk api 17 对于布局 hack 来说太高了)。

最佳答案

如果您使用具有水平方向LinearLayout 小部件,并且其子项之一想要占用所有可用的水平空间,那么您应该使用布局权重。

对于第一个 TextView 集:

layout_width="0dp"
layout_weight="1"

对于第二个 TextView:

layout_width="wrap_content"

在这种情况下,您说第二个 TextView 将占用所需的水平空间,而第一个 TextView 将占用其余部分。 “0dp”只是为了防止额外的布局测量调用而进行的优化。

关于android - 如何在不挤压的情况下将 View 与另一个 View 对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40389460/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com