如何在颤动中将数据从复选框存储到 Firebase
Posted
技术标签:
【中文标题】如何在颤动中将数据从复选框存储到 Firebase【英文标题】:How can i store data from check-box to Firebase in flutter 【发布时间】:2020-11-19 19:36:03 【问题描述】:我想将复选框中的数据添加到 Flutter 中的 firebase 数据库,我该怎么做?请参阅下面的代码,如果是表单字段,我们使用控制器,但在复选框中我如何从中获取数据?,在代码中一切都很好,但我卡在了这一行
_databaseReference.child("resources").child("Yas").set(
//what should i code here !!
);
import 'package:firebase_database/firebase_database.dart';
import 'package:flutter/material.dart';
class TestDart extends StatefulWidget
final String title;
TestDart(this.title);
@override
_TestDartState createState() => _TestDartState();
class _TestDartState extends State<TestDart>
final _databaseReference = FirebaseDatabase.instance.reference();
@override
Widget build(BuildContext context)
return Scaffold(
appBar: AppBar(
title: Text("Testing"),
centerTitle: true,
),
body: SingleChildScrollView(
child: Column(
children: <Widget>[
Exercise(
title: "Yash",
),
Exercise(
title: "Deepak",
),
Exercise(
title: "Yashwant",
),
SizedBox(
height: 25,
),
Container(
child: Center(
child: SizedBox(
height: 55,
width: 150,
child: RaisedButton(
onPressed: ()
_databaseReference.child("resources").child("Yas").set(
//what should i code here !!
);
Navigator.pushReplacement(
context,
PageTransition(
child: SubmitPage(),
type: PageTransitionType.rightToLeft));
,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(15)),
color: Colors.deepPurple,
child: Text("Submit",
style: TextStyle(
fontSize: 20,
color: Colors.white,
)),
),
),
),
)
],
),
),
);
class Exercise extends StatefulWidget
final String title;
Exercise(this.title);
@override
_ExerciseState createState() => _ExerciseState();
class _ExerciseState extends State<Exercise>
bool selected = false;
@override
Widget build(BuildContext context)
return ListTile(
title: Text(widget.title),
trailing: Checkbox(
value: selected,
onChanged: (bool val)
`setState`(()
selected = val;
);
),
);
【问题讨论】:
【参考方案1】:您可以使用布尔值。 添加这个
bool flag = false;
RaisedButton(
onPressed: ()
setState()
!flag;
_databaseReference.child("resources").child("Yas").set(
'enabled': flag,
);
【讨论】:
这只会给出真或假值,但问题会存储值 你的意思是标签值吗? 是的,我想存储选定的值,例如 Deepak pr 可能是 Yash以上是关于如何在颤动中将数据从复选框存储到 Firebase的主要内容,如果未能解决你的问题,请参考以下文章