码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2015-11-19 18:51:11      阅读:446      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!