我想实现下一个功能。我有一个 ListView
它的每一个项目包含四个 TextViews
(联系人姓名、日期、消息主题、消息正文):它们的放置方式如下:
___Name textView___ ___Date textview_____
___Subject textview__ __Message textview___
消息正文文本视图包含消息的大文本。所以,一开始我只显示它的一部分,但当我点击上下文菜单按钮阅读更多我想要的消息正文 TextView
展开以显示所有文本:
___Name textView___ ___Date textview_____
___Subject textview__ __Message textview___
___Message textview continue________________
___Message textview continue________________
那么,有没有办法实施这样的伎俩呢?或者至少要模拟这样的功能?
3条答案
按热度按时间ee7vknir1#
你可以
setMaxLines(
)在TextView
并在用户单击“继续”按钮时将其重置。你也可以给TextView
固定高度(100dp)并将高度设置为wrap-content
单击,但这可能看起来不太好,因为线可能是半可见的。w41d8nur2#
那么,有没有办法实施这样的伎俩呢?或者至少要模拟这样的功能?
如果标准用法不能满足您的需要,这里有另一个解决方案。
是的,我在运行时对组件进行了动态调整。
在java代码中,在运行时(方向改变等等),我用
findViewById
. 在这之后,要求布局参数与getLayoutParams
()我做了一个石膏,改变了位置和尺寸。我也向您推荐:基于事件更改组件的属性,甚至添加更多,或者删除/隐藏。
llew8vvj3#
使用singleline=true创建textview;当点击“阅读更多”时,使其为假。。可能有用。。