问题描述
我将此页面作为选项卡页面,显示来自服务器的映射数据,并且当我在一个文本字段中键入数字时,每行包含两个文本字段,并在每一行的底部将它们插入数据库,所有文本字段都显示与如下图所示:
页面代码:
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'package:http/http.dart' as http;
import '../models/matchs.dart';
class Home extends StatefulWidget {
@override
_HomeState createState() => _HomeState();
}
class _HomeState extends State<Home> {
var logined_user;
var logined_email;
TextEditingController _resultController1 = new TextEditingController();
TextEditingController _resultController2 = new TextEditingController();
getuser() async {
SharedPreferences preferences = await SharedPreferences.getInstance();
logined_user = preferences.getString('username');
logined_email = preferences.getString('email');
if (logined_user != null) {
setState(() {
logined_user = preferences.getString('username');
logined_email = preferences.getString('email');
});
}
}
@override
void initState() {
getuser();
super.initState();
}
//App Start
@override
Widget build(BuildContext context) {
List matchs = [];
Future<List> get_matchs() async {
var url =
'https://technosat-iq.com/myexpect/api/controller/matchs/show_matchs.php?s_id=1';
var response = await http.get(url);
var data = jsonDecode(response.body);
print(data);
for (var x in data) {
Match newmatch = Match(
x['s_id'],x['week_id'],x['league_name'],x['home_team'],x['away_team'],x['home_goals'],x['away_goals'],x['m_date'],);
matchs.add(newmatch);
}
return matchs;
}
return FutureBuilder(
future: get_matchs(),builder: (context,snapshot) {
if (snapshot.data == null) {
return Scaffold(
body: Container(
decoration: BoxDecoration(
color: Colors.orange[100],),child: Center(
child: Text("Loading"),);
} else {
return Container(
color: Colors.indigo[200],child: ListView(
children: [
SizedBox(
height: 10,Text(
'Active Games',style: TextStyle(fontSize: 22),textAlign: TextAlign.center,Column(
children: snapshot.data.map<Widget>((item) {
return Column(
children: [
SizedBox(
height: 10,Text(item.m_date),Table(
columnWidths: {
0: FlexColumnWidth(2),1: FlexColumnWidth(2),2: FlexColumnWidth(2),3: FlexColumnWidth(2),},children: [
TableRow(
decoration: BoxDecoration(
color: Color.fromRGBO(220,100,200,0.2),children: [
Container(
alignment: Alignment.center,height: 50,child: Text(
item.home_team,style: TextStyle(fontSize: 20),)),Container(
alignment: Alignment.center,child: Image(
image: AssetImage('./assets/flags/' +
item.home_team +
'.png'),width: 30,Container(
padding:
EdgeInsets.only(top: 10,bottom: 10),alignment: Alignment.center,child: TextField(
controller: _resultController1,keyboardType: TextInputType.number,decoration: InputDecoration(
enabledBorder: OutlineInputBorder(
borderSide: BorderSide(
color: Colors.grey[700],focusedBorder: OutlineInputBorder(
borderSide: BorderSide(
color: Colors.grey[700],Container(
alignment: Alignment.center,padding: EdgeInsets.all(10),child: RaisedButton(
onPressed: () {
print(_resultController1.text);
print(_resultController2.text);
},child: Text('Insert'),))
]),TableRow(
decoration: BoxDecoration(
color: Color.fromRGBO(220,0.1),child: Text(item.away_team,style: TextStyle(fontSize: 20))),child: Image(
image: AssetImage('./assets/flags/' +
item.away_team +
'.png'),child: TextField(
keyboardType: TextInputType.number,controller: _resultController2,Container()
])
],],);
}).toList(),);
}
});
}
}
如何在一个文本字段中显示值? 注意:当我点击插入成功打印的值
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)