Flutter 如何避免在颤振中翻页
以下代码为Flutter 如何避免在颤振中翻页,flutter,Flutter,以下代码为main.dart: import 'package:flutter/material.dart'; import 'landing page.dart'; void main() { runApp(new MaterialApp( home: LandingPages(), )); } 这是我的登录页类: import 'package:flutter/material.dart'; import 'package:lis
main.dart
:
import 'package:flutter/material.dart';
import 'landing page.dart';
void main() {
runApp(new MaterialApp(
home: LandingPages(),
));
}
这是我的登录页类:
import 'package:flutter/material.dart';
import 'package:listview/devices.dart';
import 'main.dart';
class LandingPages extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new MaterialApp(
title: 'Is there anybody out there?',
home: new Scaffold(
body: new Stack(
children: <Widget>[
new Container(
decoration: new BoxDecoration(
image: new DecorationImage(
image: new AssetImage( 'images/landing.png'),
fit: BoxFit.cover
),
),
),
new InkWell(
onTap: () =>print(Navigator.of(context).push(new MaterialPageRoute(builder:(BuildContext)=>MyApp()))),
)
],
)
),
);
}
}
导入“包装:颤振/材料.省道”;
导入“包:listview/devices.dart”;
导入“main.dart”;
类LandingPages扩展了无状态小部件{
@凌驾
小部件构建(构建上下文){
返回新材料PP(
标题:“外面有人吗?”,
家:新脚手架(
正文:新堆栈(
儿童:[
新容器(
装饰:新盒子装饰(
图片:新装饰图片(
image:newassetimage('images/landing.png'),
适合:BoxFit.cover
),
),
),
新墨水池(
onTap:()=>print(Navigator.of(context).push(newmaterialpageroute(builder:(BuildContext)=>MyApp()),
)
],
)
),
);
}
}
还有我的第二页,我可以很容易地返回到登录页:
import 'package:flutter/material.dart';
import 'package:listview/devicepage.dart';
void main(){
runApp(new MaterialApp(
home: new MyApp(),
));
}
class MyApp extends StatefulWidget{
@override
_State createState() =>new _State();
}
class _State extends State<MyApp>{
List<bool> _data =new List<bool>();
@override
void initState() {
setState(() {
for (int i=0;i<10;i++){
_data.add(false);
}
});
}
@override
Widget build(BuildContext context) {
return new Scaffold(
appBar:new AppBar(
title: new Text("خانه هوشمند"),
),
body: new ListView.builder(
itemCount: _data.length,
itemBuilder: (BuildContext,int index){
return new Card(
child: new Column(
mainAxisSize: MainAxisSize.min,
children: <Widget>[
new Row(
mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[
new Image.asset(
'images/acc.png',
height: 100.0,
fit: BoxFit.contain,
),
],
),
const ListTile(
title: const Text('نام دستگاه',textAlign: TextAlign.left,),
subtitle: const Text('آخرین وضعیت موجود',textAlign: TextAlign.left,),
),
new ButtonTheme.bar( // make buttons use the appropriate styles for cards
child: new ButtonBar(
children: <Widget>[
new FlatButton(
child: const Text('بیشتر'),
onPressed: () { Navigator.push(context,MaterialPageRoute(builder: (context)=> DevicePage())); },
),
],
),
),
],
),
);
},
),
);
}
}
导入“包装:颤振/材料.省道”;
导入“包:listview/devicepage.dart”;
void main(){
runApp(新材料)PP(
主页:新建MyApp(),
));
}
类MyApp扩展了StatefulWidget{
@凌驾
_State createState()=>new_State();
}
类_状态扩展状态{
列表_data=新列表();
@凌驾
void initState(){
设置状态(){
对于(int i=0;i DevicePage());},
),
],
),
),
],
),
);
},
),
);
}
}
在我的第二页中没有后退按钮,但当我使用手机中的后退按钮时,它会返回。有人能告诉我如何解决我的问题吗?使用
Navigator.pushReplacement()
而不是在登录页中按按钮