import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
// TODO: implement build
//需要构建一个material的部件
return MaterialApp(
title: '获取远程数据并解析为模型',
home: MyPage(),
);
}
}
class MyPage extends StatefulWidget {
//必须重写该方法 返回state
@override
State<StatefulWidget> createState() {
// TODO: implement createState
return MyState();
}
}
class MyState extends State<MyPage> {
String ddddd = "ffffffff";
// @override
// void setState(fn) {
// // TODO: implement setState
// super.setState(fn);
//
// }
//必须重写build方法 - 返回一个部件
@override
Widget build(BuildContext context) {
// TODO: implement build
return Scaffold(
appBar: AppBar(
title: Text('数据转模型'),
),
body: Column(
children: <Widget>[
Container(
child: GestureDetector(
child: Text(ddddd),
// onTap: fetchPost,
//刷新界面
// onTap: fetchPost, //这里需要的是一个方法, 而不是一个方法的返回值
onTap: (){
fetchPost().then((value){
setState(() {
ddddd = value;
});
});
},
))
],
),
);
}
}
//返回String, 显示到text文本部件上
//调用接口 获取服务端数据
Future<String> fetchPost() async {
final response =
await http.get("https://wanandroid.com/wxarticle/chapters/json");
final result = response.body;
print(result);
return result;
}
Flutter获取远程数据 自动刷新UI界面
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 问题原因是有个点差列表的界面,前期是自己socket工具封装自己代码的失误,造成数据源data不断追加,比较专业的...
- 2014-12-28 22:48:30qinlicang阅读数 103276 在ios的开发和学习中多线程编程是必...
- 在ios的开发和学习中多线程编程是必须会遇到并用到的。 在java中以及Android开发中,大量的后台运行,异步...
- 个人收藏 在ios的开发和学习中多线程编程是必须会遇到并用到的。 在java中以及Android开发中,大量的后台...
- 在ios的开发和学习中多线程编程是必须会遇到并用到的,大量的后台运行,异步消息队列,基本都是运用了多线程来实现。 ...