首页 > 其他 > 详细

RelativeLayout布局,不希望文本盖住其他组件

时间:2015-11-19 18:48:39      阅读:237      评论:0      收藏:0      [点我收藏+]

简单的图先看上一看

技术分享

上面使用的是RelativeLayout布局(不要问为什么不用LinearLayout,因为最右边的信箱的右上角还会有个红点,相对布局直接些)

需要实现的效果是,TextView居中,当文本过长时不能覆盖住右边的组件,而是用点点代替超出部分。

最开始的想法是:

  既然要居中,设置TextView的centerHorizontal为true;

  不能超出右边,设置toLeftOf为右边的组件。

 

以上,so easy。但是运行起来的效果是,TextView并未居中!!!

为什么呢?尝试一下,把toLeftOf这句去除,发现文本居中了。可以发现,使用toLeftOf之后,TextView会往右边的组件靠拢。。

 

解决方案:

  在TextView外嵌套一层LinearLayout,toLeftOf右边组件,使之填充右边组件左侧的所有区域,然后设置gravity为center。

这样,包含在LinearLayout中的TextView在文本过长时,也不会超出了。

RelativeLayout布局,不希望文本盖住其他组件

原文:http://www.cnblogs.com/ivan-aldrich/p/4978007.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!