当然这是一个频繁的用例,但是我似乎无法使用LinearLayout(或RelativeLayout)来解决它,但也许我缺少了一些东西。
用图像最好的解释:
我有一个基本的textview聊天气泡,另一个textview右对齐(消息的时间戳)。
两者都是wrap_content
(但时间戳可以精确设置为40dp,但似乎并不重要)。
现在,在第一个(顶部)消息中它很短,因此您可以看到右侧的视图。
但是在第二个字符串很长的情况下,它wrap_content
已经占用了手机的整个宽度,将时间戳文本视图推出了屏幕(水平的线性布局,但是相对的布局也是toRightOf
如此)
因此,如何将一个时间戳与另一个视图对齐,但是该时间戳将确保大小(而不是自动换行/压扁-消息气泡字符串自动换行)
(我意识到我可以使用RTL布局,但是我双方都有消息,因此在其他情况下我需要LTR + min sdk api 17对于布局hack来说太高了)。
任何帮助将不胜感激,因为我肯定错过了一些明显的事情。
如果您使用LinearLayout
水平的窗口小部件,orientation
并且其中一个子窗口要占用所有可用的水平空间,则应使用布局权重。
对于第一TextView
组:
layout_width="0dp"
layout_weight="1"
对于第二个TextView
:
layout_width="wrap_content"
在这种情况下,您说第二个TextView
将占据所需的水平空间,第一个TextView
将占据其余的空间。“ 0dp”只是一种优化,可以防止额外的布局度量调用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句