我想实现下一个功能。我有ListView
每个项目包含四个TextViews
(联系人姓名,日期,邮件主题,邮件正文):
它们以这样的方式放置:
___Name textView___ ___Date textview_____
___Subject textview__ __Message textview___
邮件正文TextView包含邮件的大文本。所以一开始我只展示其中的一部分,但是当我点击上下文菜单按钮阅读更多时,我希望邮件正文TextView
以这样的方式展开以显示所有文本:
___Name textView___ ___Date textview_____
___Subject textview__ __Message textview___
___Message textview continue________________
___Message textview continue________________
那么有没有办法实现这样的技巧?或者至少要模拟这样的功能?
答案 0 :(得分:1)
使用SingleLine = true创建TextView;当点击“阅读更多”时,将其设为假..可能会工作..
答案 1 :(得分:0)
setMaxLines(
上的{p> TextView
},并在用户点击“继续”按钮时将其重置。你也可以给TextView
一个固定的高度(100dp)并在点击时将高度设置为wrap-content
,但这可能看起来不太好,因为线条可能是半可见的。
答案 2 :(得分:0)
那么有没有办法实现这样的技巧?或至少到 模拟这样的功能?
如果标准用法不能满足您的需求,这是另一种解决方案。
是的,我在运行时动态调整了组件大小。
在Java代码中,在运行时(方向更改等),我使用findViewById
引用了我的组件(TextView和EditText)。在用getLayoutParams
()询问布局参数后,我做了一个演员并改变了位置和大小。
我也会为您推荐:基于事件的组件更改属性,甚至添加更多,或删除/隐藏。