最近在项目中使用android:ellipsize="end"无效,经过排查,发现不是没有省略号,而是已经超出了屏幕。经过分析,我觉得是对ConstraintLayout不够了解,下面贴一下我之前的代码:

  

坑爹的是,这种方式在预览界面是没问题的,运行在手机上却出现bug

想到我之前没有在ConstraintLayout中使用过这种方式,我读了一片相关博客,大概明白了来龙去脉,ConstraintLayout中的控件都要规定约束范围,之前的写法显然违背了这个原则,textview的最大宽度等于它的父布局的宽,加上左侧别的控件的宽度,导致超出了屏幕。明白了这一层,对textview的宽度做了约束,果然实现了最终效果。这是修改后的代码:

更多相关文章

  1. 还不会View绘制?本文带你get新技能!!
  2. Android:eclipse中导入项目无法编译,robotium 测试用例无法正确运
  3. Android(三)显示控件使用
  4. Android中TextView控件的singleLine废弃解决
  5. Android(安卓)通用的下拉刷新,重温事件传递
  6. android基础知识12:android自动化测试06―Instrumentation 03 技
  7. ProgressBar的父控件为白色背景时progress不显示问题
  8. Android中的ListView设置setOnItemClickListener后发现onItemCli
  9. Andoid - 开发实例(3):高仿微信的界面

随机推荐

  1. ssh隧道的特别使用--ssh跳板机的实现
  2. 架构学习之路——高可用高并发系统设计原
  3. sd-wan的时代也慢慢崛起了
  4. 开源APM工具PinPoint部署方法
  5. 虚拟网络:OpenFlow,与OpenStack集成,边缘虚
  6. 聊聊运维(1)证明你是坏运维的七个迹象,不要
  7. Google为Android平板电脑提供了新的媒体
  8. 收藏了,硬盘、RAID组与Ceph的IOPS公式与工
  9. Java初级、中级、高级学习必备书籍,值得收
  10. Centos6.8下编译安装Apache 2.4.25详细过