xh_framework 0.0.3 xh_framework: ^0.0.3 copied to clipboard
a new flutter framework for xh.
import 'package:flutter/material.dart';
import 'package:xh_framework/xh_framework.dart';
import 'com.xh.example/model/user_info_model.dart';
import 'com.xh.example/network/test_request.dart';
import 'com.xh.example/widget/test_widget2.dart';
import 'com.xh.example/widget/user_info.dart';
void main() => runApp(MyApp());
class MyApp extends XHStatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: MyHomePage(title: 'Flutter Demo Home Page'),
routes: <String, WidgetBuilder>{
'/refresh': (BuildContext context) => null,
});
}
}
class MyHomePage extends XHStatefulWidget {
MyHomePage({this.title});
final String title;
@override
_MyHomePageState createState() => _MyHomePageState(data: title);
}
class _MyHomePageState extends XHStatefulWidgetState<MyHomePage, String> {
int _counter = 0;
_MyHomePageState({data}) : super(data: data);
void _incrementCounter() {
showDialog(
context: context,
builder: (context) {
return XHSimpleDialog(context, list: ["条目1", "条目2", "条目3"],
onTap: (action, data) {
showToast(data);
});
});
// showDialog(
// context: context,
// builder: (context) {
// return XHAlertDialog(context,
// title: Text("这是标题"),
// content: Text("这是内容"),
// confirm: "确定",
// cancel: "取消", onTap: (action, data) {
// showToast(data);
// });
// });
// showDialog(
// context: context,
// builder: (context) {
// return XHCupertinoAlertDialog(context,
// title: Text("这是标题"),
// content: Text("这是内容"),
// confirm: "确定",
// cancel: "取消", onTap: (action, data) {
// showToast(data);
// });
// });
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(data),
),
body: Center(
child: Column(
children: <Widget>[
TextWidget(
onTap: (action, data) => print('x' + data.toString()),
data: Bean('wuchuang1', 18)),
TextWidget2(
onTap: (action, data) => print('x' + data.toString()),
data: Bean('wuchuang2', 18)),
Container(
height: 100,
child: UserInfo(
onTap: (action, data) => doRequest(context),
data: UserInfoModel(
'chuangWu',
55,
Image.asset(
"images/head.png",
width: 50,
height: 50,
),
'Android 开发',
'学海',
'选择大于努力'),
),
)
],
)),
floatingActionButton: FloatingActionButton(
onPressed: _incrementCounter,
tooltip: 'Increment',
child: Icon(Icons.add),
),
);
}
void doRequest(BuildContext context) {
TestRequest.getInstance().testGet(
onSuccess: (model) => print(model.ranking.title),
onError: (e) => print(e));
// TestRequest.getInstance().testPost(
// onSuccess: (data) => print(data.toString()),
// onError: (e) => print(e.toString()));
showLoader();
TestRequest.getInstance().testDownload(
onSuccess: (data) => closeLoader(),
onProgress: (int count, int total) =>
print(count.toString() + ":" + total.toString()),
onError: (e) {
showToast(e.message);
closeLoader();
});
}
}