当前位置: 首页 > wzjs >正文

做视频网站程序多少钱绵阳网站建设 经开区

做视频网站程序多少钱,绵阳网站建设 经开区,WordPress文章提交百度,湘潭网站建设 多少钱磐石网络📌 场景需求 在日常开发中,我们经常遇到这样的需求: 一个 TextView(比如标题)需要根据文字内容动态变宽,但不能超过右侧的另一个控件(比如时间日期)的区域。并且还要在文字末尾显示…

📌 场景需求

在日常开发中,我们经常遇到这样的需求:

一个 TextView(比如标题)需要根据文字内容动态变宽,但不能超过右侧的另一个控件(比如时间日期)的区域。并且还要在文字末尾显示一个小圆点或标志紧贴着文字。

👇 实际 UI 示意大致如下:

[图标]  [标题内容……][小圆点]           [时间]

挑战在于:

  • tv_title 的宽度是动态的,不能写死;
  • 但又不能超过 tv_date
  • view_sign 要紧跟在文字后;
  • 使用 ConstraintLayout 的同时不能让 tv_title 居中。

❌ 常见错误写法

很多人一开始会写成:

<TextViewandroid:id="@+id/tv_title"android:layout_width="0dp"app:layout_constraintStart_toEndOf="@id/iv_type"app:layout_constraintEnd_toStartOf="@id/tv_date"... />

这会导致 tv_title 占满整个空间,并且默认居中,view_sign 无法贴着文字末尾显示


✅ 正确做法:Barrier 限制最大宽度 + Bias 控制对齐方向

1. 引入 Barrier
<androidx.constraintlayout.widget.Barrierandroid:id="@+id/barrier_date"android:layout_width="wrap_content"android:layout_height="wrap_content"app:barrierDirection="start"app:constraint_referenced_ids="tv_date" />

Barrier 会以 tv_date 的 start 位置作为限制边界。

2. 配置标题 TextView
<TextViewandroid:id="@+id/tv_title"android:layout_width="wrap_content"android:layout_height="wrap_content"android:maxLines="1"android:ellipsize="end"app:layout_constrainedWidth="true"app:layout_constraintStart_toEndOf="@id/iv_type"app:layout_constraintEnd_toStartOf="@id/barrier_date"app:layout_constraintTop_toTopOf="@id/iv_type"app:layout_constraintHorizontal_bias="0" />

重点说明:

  • wrap_content:根据文字宽度自适应;
  • constrainedWidth=true:防止超出范围;
  • End 约束到 Barrier,实现“不能超过 tv_date”;
  • bias=0:让内容靠左贴紧,不会居中!
3. 跟随文字的小圆点(view_sign)
<Viewandroid:id="@+id/view_sign"android:layout_width="12dp"android:layout_height="12dp"android:layout_marginStart="8dp"android:background="@drawable/shape_oval_unread"app:layout_constraintStart_toEndOf="@id/tv_title"app:layout_constraintTop_toTopOf="@id/tv_title"app:layout_constraintBottom_toBottomOf="@id/tv_title" />

view_sign 会始终跟在文字后面,位置自然、贴合。


🧪 Demo 效果预览

标题内容效果
短标题贴着左边,右边空出
这个标题稍微长一点点点点点点最长宽度控制在 tv_date 前面
超长标题会自动省略...达到上限时自动省略,view_sign 保持紧跟

✅ 总结

使用 ConstraintLayout + Barrier,我们可以优雅地实现 “动态宽度、最大限制、附加元素紧贴文字”的复杂布局,不需要手动计算宽度或写自定义 View

关键技巧:

  • Barrier 约束最大边界
  • constrainedWidth + bias 控制 TextView 对齐方式
  • wrap_content 保留文字真实宽度
  • 省略号自动触发

这种思路非常适用于复杂的通知栏、列表项、消息提醒等 UI 设计。

http://www.dtcms.com/wzjs/578443.html

相关文章:

  • 商贸公司网站建设如何做外链
  • 手机好看网站模板网站开发流程图
  • 泉山网站开发企业建站框架
  • 福田网站改版四川做网站的公司
  • 在c盘做网站可以吗牟平建设企业网站
  • 外贸网站怎么建设门户网站建设不断
  • 西海岸新区城市建设局公示网站网站开发和软件开发有什么区别
  • 为企业为什么做网站广州网站优化网站
  • 手机网站禁止缩放911制品厂麻花
  • 重庆网站优化排名软件方案php做网站子页模板
  • 一个网站需要几个人做花生壳域名还免费吗
  • 南京市建设工程造价管理处网站wordpress影音主题
  • 江都微信网站建设qq手机版
  • 常德小学报名网站在tomcat部署wordpress
  • 做网站月薪资多少钱wordpress小说自动采集
  • 綦江中国建设银行官网站国家企业信息公开网查询系统
  • 上海高端建设网站杭州计算机公司排名
  • 团建网站地推
  • 江苏微信网站建设WordPress建站评价
  • 大连网站设计室网站推荐免费的
  • 做网站需要了解哪些知识整站优化费用
  • 北京威凯建设发展招聘网站晋城市新闻
  • 网站内部链接有什么作用设计网名的特殊符号
  • python3做网站教程阜阳做网站哪家好
  • 网站找哪些单位做实名认证短信推广
  • 有没有专门做旅游攻略的网站本地电脑做网站服务器
  • 青岛建设信息网江西短视频搜索seo推荐
  • 做asp网站教程wordpress微信登录界面
  • 微站官网汕头个人网站推广建设
  • 六安市网站建设seo网络运营