flutter - 如何意识到这一点?
问题描述
我在那里看到 ListView,它有一个TrackWidget
.
TrackWidget 包含一个 Row,它有 Text(number)、Text(title)、Text(subtitle)、Text(time) 和 Button。
但是,也可能存在大于 Row 大小的标题。在这种情况下, Text(title) 应该占据所有位置。
请帮帮我。
解决方案
使用RichText
小部件可能是要走的路,使用它优先呈现的文本将是第一个,所以在你的情况下歌曲标题。
另外不要忘记设置TextOverflow.ellipsis
when...
文本太长。
例子
ListTile(
leading: Text(songTrackNumber, style: TextStyle(color: Colors.grey)),
title: RichText(
overflow: TextOverflow.ellipsis,
text: TextSpan(
style: TextStyle(color: Colors.black),
children: [
TextSpan(text: songTitle),
TextSpan(text: songAlbum, style: TextStyle(color: Colors.grey)),
],
),
),
trailing: Text(songLength, style: TextStyle(color: Colors.grey)),
);
推荐阅读
- reactjs - React-Redux 存储或将 api 中的 props 传递给组件,这是更好的方法
- msal - 必须使用登录组件才能使用其他组件
- java - Firestore 好友列表显示不正确
- java - 对话框中的 EditText.setText("") 使应用程序崩溃
- jquery - Select2 从过滤列表中选择所有选项以进行多项选择
- java - JTable CellRenderer 仅在聚焦时更改前景色
- node.js - 如何在使用 Outlook api 创建日历事件时隐藏来宾列表/与会者以查看其他与会者
- symfony - 如何覆盖“公共”目录?
- javascript - 数据推入数组会覆盖值
- node.js - Vue|Nuxt - 将项目复制到生产服务器导致错误