Flutter 通过下拉按钮将问题移动到另一页
所以基本上我试图通过点击dropdownButton来改变一个页面,由于某种原因我得到了这个错误 我曾尝试用材料/脚手架包装东西,但都不起作用。 有什么帮助吗Flutter 通过下拉按钮将问题移动到另一页,flutter,Flutter,所以基本上我试图通过点击dropdownButton来改变一个页面,由于某种原因我得到了这个错误 我曾尝试用材料/脚手架包装东西,但都不起作用。 有什么帮助吗 import 'package:flutter/material.dart'; import 'package:intergrative2020_UI_Rest/screens/signup.dart'; class AdminPermissions extends StatefulWidget { @override _Ad
import 'package:flutter/material.dart';
import 'package:intergrative2020_UI_Rest/screens/signup.dart';
class AdminPermissions extends StatefulWidget {
@override
_AdminPermissionsState createState() => _AdminPermissionsState();
}
class _AdminPermissionsState extends State<AdminPermissions> {
var _currencies = ['Create User','Delete User','Search User'];
var _currentItemSelected = '';
@override
void initState() {
super.initState();
_currentItemSelected = _currencies[0];
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home:Scaffold(
body: DropdownButton<String>(
items: _currencies.map((String value) {
return DropdownMenuItem(
value: value,
child: Text(value),
);
}).toList(),
value: _currentItemSelected,
onChanged: (String newValueSelected) {
// Your code to execute, when a menu item is selected from dropdown
_onDropDownItemSelected(newValueSelected);
switch(newValueSelected){
case "Create User" :{
Navigator.pushReplacement(context, MaterialPageRoute(builder: (BuildContext context) => Signup()));
break;
}
}
}
),
),
);
}
void _onDropDownItemSelected(String newValueSelected) {
setState(() {
this._currentItemSelected = newValueSelected;
});
}
}
我曾尝试用材料/脚手架包装东西,但都不起作用。
有什么帮助吗
import 'package:flutter/material.dart';
import 'package:intergrative2020_UI_Rest/screens/signup.dart';
class AdminPermissions extends StatefulWidget {
@override
_AdminPermissionsState createState() => _AdminPermissionsState();
}
class _AdminPermissionsState extends State<AdminPermissions> {
var _currencies = ['Create User','Delete User','Search User'];
var _currentItemSelected = '';
@override
void initState() {
super.initState();
_currentItemSelected = _currencies[0];
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home:Scaffold(
body: DropdownButton<String>(
items: _currencies.map((String value) {
return DropdownMenuItem(
value: value,
child: Text(value),
);
}).toList(),
value: _currentItemSelected,
onChanged: (String newValueSelected) {
// Your code to execute, when a menu item is selected from dropdown
_onDropDownItemSelected(newValueSelected);
switch(newValueSelected){
case "Create User" :{
Navigator.pushReplacement(context, MaterialPageRoute(builder: (BuildContext context) => Signup()));
break;
}
}
}
),
),
);
}
void _onDropDownItemSelected(String newValueSelected) {
setState(() {
this._currentItemSelected = newValueSelected;
});
}
}
所以基本上我试图通过点击dropdownButton来改变一个页面,由于某种原因我得到了这个错误
我曾尝试用材料/脚手架包装东西,但都不起作用。有什么帮助吗
import 'package:flutter/material.dart';
import 'package:intergrative2020_UI_Rest/screens/signup.dart';
class AdminPermissions extends StatefulWidget {
@override
_AdminPermissionsState createState() => _AdminPermissionsState();
}
class _AdminPermissionsState extends State<AdminPermissions> {
var _currencies = ['Create User','Delete User','Search User'];
var _currentItemSelected = '';
@override
void initState() {
super.initState();
_currentItemSelected = _currencies[0];
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home:Scaffold(
body: DropdownButton<String>(
items: _currencies.map((String value) {
return DropdownMenuItem(
value: value,
child: Text(value),
);
}).toList(),
value: _currentItemSelected,
onChanged: (String newValueSelected) {
// Your code to execute, when a menu item is selected from dropdown
_onDropDownItemSelected(newValueSelected);
switch(newValueSelected){
case "Create User" :{
Navigator.pushReplacement(context, MaterialPageRoute(builder: (BuildContext context) => Signup()));
break;
}
}
}
),
),
);
}
void _onDropDownItemSelected(String newValueSelected) {
setState(() {
this._currentItemSelected = newValueSelected;
});
}
}
我曾尝试用材料/脚手架包装东西,但都不起作用。有什么帮助吗
import 'package:flutter/material.dart';
import 'package:intergrative2020_UI_Rest/screens/signup.dart';
class AdminPermissions extends StatefulWidget {
@override
_AdminPermissionsState createState() => _AdminPermissionsState();
}
class _AdminPermissionsState extends State<AdminPermissions> {
var _currencies = ['Create User','Delete User','Search User'];
var _currentItemSelected = '';
@override
void initState() {
super.initState();
_currentItemSelected = _currencies[0];
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home:Scaffold(
body: DropdownButton<String>(
items: _currencies.map((String value) {
return DropdownMenuItem(
value: value,
child: Text(value),
);
}).toList(),
value: _currentItemSelected,
onChanged: (String newValueSelected) {
// Your code to execute, when a menu item is selected from dropdown
_onDropDownItemSelected(newValueSelected);
switch(newValueSelected){
case "Create User" :{
Navigator.pushReplacement(context, MaterialPageRoute(builder: (BuildContext context) => Signup()));
break;
}
}
}
),
),
);
}
void _onDropDownItemSelected(String newValueSelected) {
setState(() {
this._currentItemSelected = newValueSelected;
});
}
}
导入“包装:颤振/材料.省道”;
导入“package:Integrative2020_UI_Rest/screens/signup.dart”;
类AdminPermissions扩展了StatefulWidget{
@凌驾
_AdminPermissionsState createState()=>\u AdminPermissionsState();
}
类_AdminPermissionsState扩展状态{
var_currency=[“创建用户”、“删除用户”、“搜索用户”];
var_currentItemSelected='';
@凌驾
void initState(){
super.initState();
_currentItemSelected=_货币[0];
}
@凌驾
小部件构建(构建上下文){
返回材料PP(
家:脚手架(
正文:下拉按钮(
项目:_currences.map((字符串值){
返回下拉菜单项(
价值:价值,
子项:文本(值),
);
}).toList(),
值:_currentItemSelected,
onChanged:(字符串newValueSelected){
//从下拉列表中选择菜单项时要执行的代码
_onDropDownItemSelected(newValueSelected);
开关(newValueSelected){
案例“创建用户”:{
pushReplacement(context,MaterialPageRoute(builder:(BuildContext context)=>Signup());
打破
}
}
}
),
),
);
}
void _onDropDownItemSelected(字符串newValueSelected){
设置状态(){
此._currentItemSelected=newValueSelected;
});
}
}
应用程序的小部件层次结构应该是MaterialApp
->Scaffold
->下拉按钮。
因此,请尝试包装您的下拉按钮
,如下所示:
MaterialApp(
title://Title
home:Scaffold(
body:DropdownButton(
.....
.....
)
)
)
应用程序的小部件层次结构应该是MaterialApp
->Scaffold
->下拉按钮。
因此,请尝试包装您的下拉按钮
,如下所示:
MaterialApp(
title://Title
home:Scaffold(
body:DropdownButton(
.....
.....
)
)
)
尝试使用MaterialApp
。尝试使用MaterialApp
。