Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何制作像火绒一样的生物编辑器-扑动firebase_Firebase_Flutter - Fatal编程技术网

如何制作像火绒一样的生物编辑器-扑动firebase

如何制作像火绒一样的生物编辑器-扑动firebase,firebase,flutter,Firebase,Flutter,我想要一个类似Tinder的Bio编辑器,当用户点击信息时,文本字段应该出现并从firebase检索数据,并显示旧Bio,如果用户点击键盘上的“完成”按钮或按下屏幕上的任何位置,数据应该提交。先谢谢你 这是我尝试过的代码,是否有任何方法可以在点击about容器时移除上层堆栈并显示文本字段,提交后堆栈返回并显示about字段,并且我还希望在文本字段中从firebase检索旧文本(当用户更新时) 我的老问题结束了,我有一个星期没有活动了 Widget about(BuildContext conte

我想要一个类似Tinder的Bio编辑器,当用户点击信息时,文本字段应该出现并从firebase检索数据,并显示旧Bio,如果用户点击键盘上的“完成”按钮或按下屏幕上的任何位置,数据应该提交。先谢谢你

这是我尝试过的代码,是否有任何方法可以在点击about容器时移除上层堆栈并显示文本字段,提交后堆栈返回并显示about字段,并且我还希望在文本字段中从firebase检索旧文本(当用户更新时)

我的老问题结束了,我有一个星期没有活动了

Widget about(BuildContext context, dynamic snapshot) {
return Padding(
  padding: const EdgeInsets.symmetric(horizontal: 8.0),
  child: Container(
        height: MediaQuery
            .of(context)
            .size
            .height * 0.2,
        width: MediaQuery
            .of(context)
            .size
            .width,
        decoration: BoxDecoration(
          color: constantColors.white,
          borderRadius: BorderRadius.circular(15),
        ),
        child: Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
          Row(
            children: [
              Padding(
                padding: const EdgeInsets.only(
                  top: 8.0,
                  left: 10,
                ),
                child: Text(
                  "About",
                  style: TextStyle(fontSize: 24),
                ),
              ),
              Padding(
                padding: const EdgeInsets.only(top: 13, left: 6),
                child: Icon(
                  FontAwesome.pencil,
                  size: 13,
                ),
              )
            ],
          ),
          Stack(
            children: [

              Container(
                height: MediaQuery
                    .of(context)
                    .size
                    .height * 0.1,
                width: MediaQuery
                    .of(context)
                    .size
                    .width,
                child: TextField(
                  onTap: (){
                    Provider.of<PostFunctions>(context, listen: false).about(context, Provider.of<Authentication>(context, listen: false).getUserUid, {
                      'about': aboutController.text,
                    });
                  },
                  controller: aboutController,
                  maxLines: 8,
                  cursorColor: constantColors.green,
                  decoration: InputDecoration(
                      contentPadding: EdgeInsets.all(15),
                      hintText: 'A little about you',
                      isDense: true,
                      enabledBorder: OutlineInputBorder(
                          borderRadius: BorderRadius.circular(20),
                          borderSide: BorderSide.none),
                      focusedBorder: OutlineInputBorder(
                          borderRadius: BorderRadius.circular(20),
                          borderSide: BorderSide.none),
                      fillColor: constantColors.white,
                      filled: true,),
                ),
              ),
              Container(
                height: MediaQuery
                    .of(context)
                    .size
                    .height * 0.1,
                width: MediaQuery
                    .of(context)
                    .size
                    .width,
                color: constantColors.white,
                child: Text(snapshot.data.data()['about']),),
            ],
          ),
        ]),
      ),



);
}

Future about(BuildContext context, String userID, dynamic data)async{
return FirebaseFirestore.instance.collection('users').doc(userID).update(data);