Flutter showModalBottomSheet()未在颤振中打开底部模态
showModalBottomSheet不会弹出模态。我对飞镖和飞镖还不熟悉,但我认为这是一个问题,我不会有任何帮助。下面是弹出底部工作表的简单页面。。不起作用Flutter showModalBottomSheet()未在颤振中打开底部模态,flutter,dart,flutter-layout,Flutter,Dart,Flutter Layout,showModalBottomSheet不会弹出模态。我对飞镖和飞镖还不熟悉,但我认为这是一个问题,我不会有任何帮助。下面是弹出底部工作表的简单页面。。不起作用 ``` import 'package:flutter/material.dart'; void main() => runApp(new MyApp()); class MyApp extends StatelessWidget { @override Widget build(Bui
```
import 'package:flutter/material.dart';
void main() => runApp(new MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new MaterialApp(
home: new Scaffold(
appBar: new AppBar(title: const Text('Modal bottom sheet')),
body: new Center(
child: new RaisedButton(
child: const Text('SHOW BOTTOM SHEET'),
onPressed: () {
showModalBottomSheet<void>(context: context, builder: (BuildContext context)
{
return new Container(
child: new Padding(
padding: const EdgeInsets.all(32.0),
child: new Text('This is the modal bottom sheet. Click anywhere to dismiss.',
textAlign: TextAlign.center,
style: new TextStyle(
color: Theme.of(context).accentColor,
fontSize: 24.0
)
)
)
);
});
}
)
)
)
);
```
进口“包装:颤振/材料.省道”;
void main()=>runApp(新的MyApp());
类MyApp扩展了无状态小部件{
@凌驾
小部件构建(构建上下文){
返回新材料PP(
家:新脚手架(
appBar:新的appBar(标题:常量文本(“模式底页”),
正文:新中心(
孩子:新升起的按钮(
子项:常量文本('显示底页'),
已按下:(){
showModalBottomSheet(上下文:context,builder:(BuildContext)
{
退回新货柜(
孩子:新的填充物(
填充:常数边集全部(32.0),
子项:新文本('这是模式的底部工作表。单击任意位置可忽略',
textAlign:textAlign.center,
样式:新文本样式(
颜色:主题。背景。强调颜色,
字体大小:24.0
)
)
)
);
});
}
)
)
)
);
}
}
```
我似乎不知道你能把身体转换成一个新的小部件有什么问题 完整代码:
import 'package:flutter/material.dart';
void main() => runApp(new MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new MaterialApp(
home: new Scaffold(
appBar: new AppBar(title: const Text('Modal bottom sheet')),
body: Sheet(), // new Widget
));
}
}
class Sheet extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Center(
child: new RaisedButton(
child: const Text('SHOW BOTTOM SHEET'),
onPressed: () {
// Show sheet here
showModalBottomSheet<void>(
context: context,
builder: (BuildContext context) {
return new Container(
child: new Padding(
padding: const EdgeInsets.all(32.0),
child: new Text(
'This is the modal bottom sheet. Click anywhere to dismiss.',
textAlign: TextAlign.center,
style: new TextStyle(
color: Theme.of(context).accentColor,
fontSize: 24.0),
),
),
);
});
}),
);
}
}
导入“包装:颤振/材料.省道”;
void main()=>runApp(新的MyApp());
类MyApp扩展了无状态小部件{
@凌驾
小部件构建(构建上下文){
返回新材料PP(
家:新脚手架(
appBar:新的appBar(标题:常量文本(“模式底页”),
body:Sheet(),//新建小部件
));
}
}
类表扩展了无状态小部件{
@凌驾
小部件构建(构建上下文){
返回新中心(
孩子:新升起的按钮(
子项:常量文本('显示底页'),
已按下:(){
//在这里显示工作表
showModalBottomSheet(
上下文:上下文,
生成器:(BuildContext上下文){
退回新货柜(
孩子:新的填充物(
填充:常数边集全部(32.0),
儿童:新文本(
“这是模式底部工作表。单击任意位置可取消。”,
textAlign:textAlign.center,
样式:新文本样式(
颜色:主题。背景。强调颜色,
字体大小:24.0),
),
),
);
});
}),
);
}
}
您可以将身体转换为新的小部件
完整代码:
import 'package:flutter/material.dart';
void main() => runApp(new MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new MaterialApp(
home: new Scaffold(
appBar: new AppBar(title: const Text('Modal bottom sheet')),
body: Sheet(), // new Widget
));
}
}
class Sheet extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Center(
child: new RaisedButton(
child: const Text('SHOW BOTTOM SHEET'),
onPressed: () {
// Show sheet here
showModalBottomSheet<void>(
context: context,
builder: (BuildContext context) {
return new Container(
child: new Padding(
padding: const EdgeInsets.all(32.0),
child: new Text(
'This is the modal bottom sheet. Click anywhere to dismiss.',
textAlign: TextAlign.center,
style: new TextStyle(
color: Theme.of(context).accentColor,
fontSize: 24.0),
),
),
);
});
}),
);
}
}
导入“包装:颤振/材料.省道”;
void main()=>runApp(新的MyApp());
类MyApp扩展了无状态小部件{
@凌驾
小部件构建(构建上下文){
返回新材料PP(
家:新脚手架(
appBar:新的appBar(标题:常量文本(“模式底页”),
body:Sheet(),//新建小部件
));
}
}
类表扩展了无状态小部件{
@凌驾
小部件构建(构建上下文){
返回新中心(
孩子:新升起的按钮(
子项:常量文本('显示底页'),
已按下:(){
//在这里显示工作表
showModalBottomSheet(
上下文:上下文,
生成器:(BuildContext上下文){
退回新货柜(
孩子:新的填充物(
填充:常数边集全部(32.0),
儿童:新文本(
“这是模式底部工作表。单击任意位置可取消。”,
textAlign:textAlign.center,
样式:新文本样式(
颜色:主题。背景。强调颜色,
字体大小:24.0),
),
),
);
});
}),
);
}
}
大多数情况下,它不起作用,因为它存在上下文问题
在你给出的上下文中让人难堪
_showBottomSheet(BuildContext context) {
showModalBottomSheet<void>(
context: context,
builder: (BuildContext context) {
return new Container(
child: new Padding(
padding: const EdgeInsets.all(32.0),
child: new Text(
'This is the modal bottom sheet. Click anywhere to dismiss.',
textAlign: TextAlign.center,
style: new TextStyle(
color: Theme.of(context).accentColor,
fontSize: 24.0),
),
),
);
});
}
\u显示底图(构建上下文){
showModalBottomSheet(
上下文:上下文,
生成器:(BuildContext上下文){
退回新货柜(
孩子:新的填充物(
填充:常数边集全部(32.0),
儿童:新文本(
“这是模式底部工作表。单击任意位置可取消。”,
textAlign:textAlign.center,
样式:新文本样式(
颜色:主题。背景。强调颜色,
字体大小:24.0),
),
),
);
});
}
大多数情况下,它不起作用,因为它存在上下文问题
在你给出的上下文中让人难堪
_showBottomSheet(BuildContext context) {
showModalBottomSheet<void>(
context: context,
builder: (BuildContext context) {
return new Container(
child: new Padding(
padding: const EdgeInsets.all(32.0),
child: new Text(
'This is the modal bottom sheet. Click anywhere to dismiss.',
textAlign: TextAlign.center,
style: new TextStyle(
color: Theme.of(context).accentColor,
fontSize: 24.0),
),
),
);
});
}
\u显示底图(构建上下文){
showModalBottomSheet(
上下文:上下文,
生成器:(BuildContext上下文){
退回新货柜(
孩子:新的填充物(
填充:常数边集全部(32.0),
儿童:新文本(
“这是模式底部工作表。单击任意位置可取消。”,
textAlign:textAlign.center,
样式:新文本样式(
颜色:主题。背景。强调颜色,
字体大小:24.0),
),
),
);
});
}
将身体添加到新的无状态小部件,然后调用showBottomSheet将身体添加到新的无状态小部件,然后调用showBottomSheet