我正在尝试创建这样的聊天记录
尝试使用 ListView 和 CustomerScrollView 都强制孩子采用完整的水平宽度。
还尝试在 ListView Child 中嵌套一个固定大小的容器,仍然显示为全长。
我怎样才能做到这一点?
代码 - 其中子容器是固定大小但被迫占据屏幕的整个宽度。
child: ListView(
shrinkWrap: true,
children: <Widget>[
Container(
color: Colors.red,
width: 20,
height: 40,
),
],
),
Run Code Online (Sandbox Code Playgroud) 我正在从 Firestore 传输文档快照,但当数据库中没有任何内容时,snapshot.hasData 返回 true。当尝试从快照中检索值时,这会导致我的代码失败。
我该如何解决?
我尝试打印 snapshot.Data 刚刚得到一个 Documentsnapshot 实例。还考虑过向流提供初始数据,但我不知道如何提供空的 DocumentSnapshot 数据类型。
如果我手动将记录插入到 firestore,它工作正常。
StreamBuilder<DocumentSnapshot>(
stream: Firestore.instance.collection('UserDetails').document(widget.uid).snapshots(),
builder: (context, snapshot){
if(snapshot.hasError){
widget._err = snapshot.error;
} else if (snapshot.connectionState == ConnectionState.waiting){
widget._loadingUserInfo = true;
} else if (snapshot.hasData){
nameController.text = snapshot.data['name'];
ageController.text = snapshot.data['age'];
introController.text = snapshot.data['intro'];
widget._loadingUserInfo = false;
}
)
Run Code Online (Sandbox Code Playgroud)
我正在尝试从 Firestore 获取用户值以填充其表单(如果存在值或用户存在)。
现在它失败了。