ListView是Dart单条记录/结果的理想选择吗?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ListView是Dart单条记录/结果的理想选择吗?相关的知识,希望对你有一定的参考价值。
关于在Flutter / Dart中输出单个结果,我有一个问题。
在线显示结果集输出的大多数示例显示了通常的母版页(结果列表)和详细页面(传递信息并显示单个详细结果)。
我有一个场景,我想向用户显示他们自己的个人资料详细信息,因此不需要列表。我可以使用dart的ListView
实现这一点并显示单个结果。所以我的问题是 - 这是一个过度杀伤因为没有必要列出结果(并循环它)。是否有更好的方式来显示单一结果?
这里仅供参考我的代码供参考,可以作为回复的基础:
return StreamBuilder(
stream: Firestore.instance.collection('profile').where("uid", isEqualTo: currentUID).snapshots(),
builder: (BuildContext context, AsyncSnapshot snapshot) {
if (!snapshot.hasData) return CircularProgressIndicator();
if (snapshot.hasData) {
return ListView.builder(
itemCount: snapshot.data.documents.length,
itemBuilder: (context, index) {
DocumentSnapshot ds = snapshot.data.documents[index];
return Row(
children: <Widget>[
Expanded (child:Text(ds["fullname"])),
],
);
}
);
}
}
);
为了澄清,此示例返回单个结果(仅),然后循环遍历它。有更好的方法输出单个结果吗?
答案
假设你想使用ListView
作为滚动效果,那么你可以这样做:
SingleChildScrollView
此小部件类似于ListView
/ GridView
,但仅适用于一个项目。
SingleChildScrollView(
child: Text('Hello World'),
),
以上是关于ListView是Dart单条记录/结果的理想选择吗?的主要内容,如果未能解决你的问题,请参考以下文章
如果是单条记录,不适用where条件;如果是多条记录,应用where条件,返回单条记录