LinearLayout-控件不显示
今天Mms遇到了一个问题,布局如下
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginRight="45dp"
android:layout_marginTop="1dp" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true" >
<LinearLayout
android:id="@+id/mms_layout_view_parent"
android:maxWidth="100dp"
android:adjustViewBounds="true"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="14dp"
android:background="@drawable/listitem_background_recv"
android:gravity="left|center_vertical"
android:orientation="vertical" > <TextView
android:id="@+id/sender_name"
style="@style/group_member_name_style"
android:visibility="gone" /> <View
android:id="@+id/sender_name_separator"
style="@style/bubble_name_separator_style"
android:visibility="gone" /> <TextView
android:id="@+id/text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:autoLink="all"
android:linksClickable="false"
android:paddingLeft="5dp"
android:textColor="#323232"
android:textSize="14sp" /> <ViewStub
android:id="@+id/mms_layout_view_stub"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout="@layout/mms_layout_view"
android:paddingLeft="@dimen/message_item_text_padding_left_right"
android:paddingRight="@dimen/message_item_text_padding_left_right" />
<TextView
android:id="@+id/text_expire"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:linksClickable="false"
android:maxWidth="246dp"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="@color/text_expire_color"
android:textSize="14sp"
android:visibility="gone" >
</TextView>
<!-- file attachment view --> <ViewStub
android:id="@+id/mms_file_attachment_view_stub"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:layout_marginLeft="6dp"
android:layout_marginRight="8dp"
android:layout_marginTop="3dip"
android:layout="@layout/file_attachment_view" />
</LinearLayout> <LinearLayout
android:layout_width="wrap_content"
android:id="@+id/mms_all_status"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/mms_layout_view_parent"
android:layout_marginLeft="1dp"
android:layout_centerVertical="true"
android:orientation="horizontal" >
<TextView
android:id="@+id/send_time_txt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:paddingLeft="10dip"
android:textColor="#555555"
android:textSize="10sp"
android:visibility="gone" />
<!-- @} -->
<!-- For show dual date @{ --> <LinearLayout
android:id="@+id/double_time_layout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:gravity="center_vertical"
android:orientation="horizontal"
android:visibility="gone" > <TextView
android:id="@+id/recv_time_img"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:paddingLeft="10dip"
android:textColor="#555555"
android:textSize="10sp" /> <TextView
android:id="@+id/recv_date_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:paddingLeft="4dip"
android:textColor="#555555"
android:textSize="10sp" />
<TextView
android:id="@+id/time_zone_txt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:paddingLeft="20dip"
android:textColor="#555555"
android:textSize="10sp" />
</LinearLayout>
<!-- @} --> <ImageView
android:id="@+id/delivered_indicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left|center_vertical"
android:paddingLeft="4dip"
android:src="@drawable/ic_sms_mms_delivered"
android:visibility="gone" /> <ImageView
android:id="@+id/details_indicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left|center_vertical"
android:paddingLeft="4dip"
android:src="@drawable/ic_sms_mms_details"
android:visibility="gone" /> <ImageView
android:id="@+id/locked_indicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left|center_vertical"
android:paddingLeft="4dip"
android:src="@drawable/ic_lock_message_sms"
android:visibility="gone" />
<ImageView
android:id="@+id/important_indicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left|center_vertical"
android:paddingLeft="4dip"
android:src="@drawable/ic_important"
android:visibility="gone" />
</LinearLayout> </LinearLayout>
</RelativeLayout>
你会发现这个布局存在两个问题,一个就是、
<LinearLayout
android:id="@+id/mms_layout_view_parent"
android:maxWidth="100dp"
android:adjustViewBounds="true"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="14dp"
android:background="@drawable/listitem_background_recv"
android:gravity="left|center_vertical"
android:orientation="vertical" >
maxwidth不起作用,另外一个就是
你会发现
<LinearLayout
android:layout_width="wrap_content"
android:id="@+id/mms_all_status"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/mms_layout_view_parent"
android:layout_marginLeft="1dp"
android:layout_centerVertical="true"
android:orientation="horizontal" >
它不会显示。具体原因不清出。
我们想要实现的功能就是,让mms_all_status 里面的内容能够显示或者隐藏,而且它紧跟着 mms_layout_view_parent 后面,保持固定距离,虽然mms_layout_view_parent 的宽度是变化的。而当mms_layout_view_parent 达到最大宽度的时候,这时候 mms_layout_view_parent 不变,但mms_all_status 仍然可以显示
更改如下
其实非常的简单,就是当maxwidth 在LinearLayout下设定不起作用的时候,我们把这个属性放到linearLayout下的一个Textview 里面,就可以间接决定mms_layout_view_parent 的最大宽度了
更改如下
<LinearLayout
android:layout_marginTop="1dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<LinearLayout
android:id="@+id/mms_layout_view_parent"
android:adjustViewBounds="true"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="14dp"
android:background="@drawable/listitem_background_recv"
android:gravity="left|center_vertical"
android:layout_gravity="left|center_vertical"
android:orientation="vertical" > <TextView
android:id="@+id/sender_name"
style="@style/group_member_name_style"
android:visibility="gone" /> <View
android:id="@+id/sender_name_separator"
style="@style/bubble_name_separator_style"
android:visibility="gone" /> <TextView
android:id="@+id/text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
<!--关键-->
android:maxWidth="250dp"
android:autoLink="all"
android:linksClickable="false"
android:paddingLeft="5dp"
android:textColor="#323232"
android:textSize="14sp" /> <ViewStub
android:id="@+id/mms_layout_view_stub"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout="@layout/mms_layout_view"
android:paddingLeft="@dimen/message_item_text_padding_left_right"
android:paddingRight="@dimen/message_item_text_padding_left_right" />
<TextView
android:id="@+id/text_expire"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:linksClickable="false"
android:maxWidth="246dp"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="@color/text_expire_color"
android:textSize="14sp"
android:visibility="gone" >
</TextView>
<!-- file attachment view --> <ViewStub
android:id="@+id/mms_file_attachment_view_stub"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:layout_marginLeft="6dp"
android:layout_marginRight="8dp"
android:layout_marginTop="3dip"
android:layout="@layout/file_attachment_view" />
</LinearLayout> <LinearLayout
android:layout_width="wrap_content"
android:id="@+id/mms_all_status"
android:layout_height="wrap_content"
android:gravity="left|center_vertical"
android:layout_gravity="left|center_vertical"
android:layout_marginLeft="1dp"
android:orientation="horizontal" > <!-- For show dual date @{ --> <TextView
android:id="@+id/send_time_txt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:paddingLeft="10dip"
android:textColor="#555555"
android:textSize="10sp"
android:visibility="gone" />
<LinearLayout
android:id="@+id/double_time_layout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:gravity="center_vertical"
android:orientation="horizontal"
android:visibility="gone" > <TextView
android:id="@+id/recv_time_img"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:paddingLeft="10dip"
android:textColor="#555555"
android:textSize="10sp" /> <TextView
android:id="@+id/recv_date_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:paddingLeft="4dip"
android:textColor="#555555"
android:textSize="10sp" /> <TextView
android:id="@+id/time_zone_txt"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:paddingLeft="20dip"
android:textColor="#555555"
android:textSize="10sp" />
</LinearLayout>
<!-- @} --> <ImageView
android:id="@+id/delivered_indicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left|center_vertical"
android:paddingLeft="4dip"
android:src="@drawable/ic_sms_mms_delivered"
android:visibility="gone" />
<ImageView
android:id="@+id/locked_indicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left|center_vertical"
android:paddingLeft="4dip"
android:src="@drawable/ic_lock_message_sms"
android:visibility="gone" /> <ImageView
android:id="@+id/important_indicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left|center_vertical"
android:paddingLeft="4dip"
android:src="@drawable/ic_important"
android:visibility="gone" />
</LinearLayout> </LinearLayout> <ViewStub
android:id="@+id/mms_downloading_view_stub"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout="@layout/mms_downloading_view" />
</LinearLayout>
</LinearLayout>
LinearLayout-控件不显示的更多相关文章
- LinearLayout 控件
LinearLayout 控件,垂直显示各控件一行一个显示,比较好控件. 用RelativeLayout多个控件会堆在一起 <LinearLayout xmlns:android="h ...
- “此网页上的某个 Web 部件或 Web 表单控件无法显示或导入。找不到该类型,或该类型未注册为安全类型。”
自从vs装了Resharper,看见提示总是手贱的想去改掉它.于是乎手一抖,把一个 可视web部件的命名空间给改了. 喏,从LibrarySharePoint.WebPart.LibraryAddEd ...
- 关于<textArea>控件下显示不出其它控件
今天在写页面控件时发现我添加一个<textarea>后,在其下方的控件都显示不出来了,后来发现我忘写结束标记</textarea>了 以后该写结束标记还要写啊!
- iOS开发小技巧--判断控件是否显示在当前窗口
一.判断控件是否显示在当前窗口,需要同时满足一下条件: 控件的Hidden = NO; 控件的Alpha >= 0.01; self.window = keyWindow; 主窗口的bounds ...
- 解决TalbleView头部或底部子控件不显示问题
在自定义cell头部控件UITableViewHeaderFooterView(和自定义cell的方法几乎一样)时,出现了头部控件子控件不显示的问题. 注意和自定义cell的区别. .h文件 #imp ...
- QlikView TEXT控件固定显示图片
QlikView 的Text控件不仅可以用来展示文本也可以用来展示图片. 数据表 2个列,一个是 关联字段(Country),另外一个保存图片物理路径. TEXT控件固定显示图片 ,编辑控件表达式 = ...
- ArcGIS“一个或多个ActiveX控件无法显示...”问题的解决方案
ArcMap启动时的一个警告信息“一个或多个ActiveX控件无法显示...”,如图 出现这种情况,有可能的原因是IE浏览器的安全选项设置被修改了.比如被手动修改过,或者被第三方系统杀毒优化软件修改了 ...
- jquery easyui datebox 时间控件默认显示当前日期的实现方法
jquery easyui datebox 时间控件默认显示当前日期的实现方法 直接class easyui-datebox后添加一个value="true"就可以
- wpf image控件循环显示图片 以达到动画效果 问题及解决方案
1>最初方案: 用wpf的image控件循环显示图片,达到动画效果,其实就是在后台代码动态改变Image.Source的值,关键代码: ; i < ; i++)//六百张图片 { Bitm ...
- 使AspNetPager控件中文显示分页信息
在日常的编程过程中,很多学员对于使AspNetPager控件中文显示分页信息不是很清楚,本文将由达内的老师为各位学员介绍一下使AspNetPager控件中文显示分页信息的内容. AspNetPager ...
随机推荐
- Node实现简单的注册时后端的MVC模型架构
实现一个简单的注册界面后端MVC模型架构 第一步:在生成的express框架的app.js中添加一个路由,代码如下:var api = require('./routes/api'); app.use ...
- 怎么打开/查看MySQL的SQL记录
mysql在执行sql的时候会在日志当中记录很多信息,当然包括执行的所有语句.下面以使用navicat for mysql为例,来展示一下如何打开/查看MySQL的SQL记录: 打开navicat f ...
- EF框架—Database-First
ADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R Mapping) 解决方案,现已经包含在 Visual Studio 2008 S ...
- css3中rem和em是干嘛的
css3中rem和em是干嘛的 一.总结 一句话总结:对rem综合评价是用来做web app它绝对是最合适的人选之一. 这里我特别强调web app,web page就不能使用rem吗,其实也当然可以 ...
- ADO.NET数据读取封装
public class sqlserver { //private string sqlstr = System.ConfigurationManager.ConnectionStrings[&qu ...
- Unix/Linux环境下多一点不如少一点
正如很多人所知道的$PATH环境变量里存着一张目录列表,当用户要执行某一程序时,系统就会按照列表中的内容去查找该程序的位置.当程序名前不带点斜线 . / 时$PATH就会起作用. 对于普通用户和roo ...
- springMVC No mapping found for HTTP request with URI
转载自:http://blog.sina.com.cn/s/blog_534f69a00101332u.html 1.问题: No mapping found for HTTP request wit ...
- word中添加Mathtype公式行间距改变问题
转载链接:http://blog.sciencenet.cn/home.php?mod=space&uid=471807&do=blog&id=616838 最近碰到在word ...
- CentOS7的聚合链路
1.环境介绍 [root@rhcc ~]# cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) ENERAL.DEVICE: en ...
- Swift学习笔记(3)--基本运算符
基本运行符: +(加法.正数) - (减法.负数) * (乘法) / (除法) % (求余) : 在Swift中,求余可以是浮点数求余. &&(逻辑与) || (逻辑或) ^ (逻 ...