我有一个左对齐的TextView和一个右对齐的按钮并排。 我希望按钮占用右边所需的空间(取决于其中的文本)和左边的文本以尽可能多地填充,并在任何溢出上进行椭圆化处理。

|Long title that may or may not ellipsi... |

我已经阅读并尝试了很多其他似乎有类似问题的post,其中没有一个对我有用。 我已经尝试使用具有权重的LinearLayout以及分配了layout_toLeftOf的RelativeLayout,其中没有一个导致我需要的结果。

这是我的LinearLayout代码(带有不必要的部分),我给左侧TextView一个layout_weight为1,按钮一个layout_weight为0.这应该给右侧按钮提供所需的所有空间,并给TextView剩下的部分,但相反,左边的标题停止显示,右边的按钮被压到一边并切断。 我已经尝试将文本和按钮的宽度替换为0dip,正如我所见,这不会改变任何东西。

用0替换TextView的layout_weight实际上允许右侧按钮完全适合屏幕,但左侧文本仍未显示。 如果我为TextView和按钮将layout_weights设置为0,然后我将TextView的宽度从0dip更改为wrap_content,则所有内容都会显示,但按钮会被压缩以填充剩余空间(并且内部文本被截断)。

这是我对RelativeLayout的尝试:

除了左侧TextView(当它太长)重叠并出现在按钮顶部而不是截断和椭圆化时,所有内容都很好地对齐并显示出来。 不应该android:layout_toLeftOf“@ layout / action_buttons”指定TextView应该保持在按钮的左边界?

我试过看似我在这个网站上find的与此问题有关的一切,但我仍然无法得到解决方案。 任何帮助将不胜感激!

这将为您解决问题:

这是运行时的样子:

VB0eL.png

再次使用带有更多文本的按钮:

waGQ3.png

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐