【发布时间】:2021-09-27 23:41:06
【问题描述】:
我正在尝试制作一个标签栏并在每个标签中包含一些页面。我没有收到错误,模拟器运行应用程序,但是,它只显示标签栏及其动画,而不是我需要的其他页面。
当我在页面的按钮上设置 Widget buildPages 时出现了一些错误,因此我将 _MyAppState 类下的小部件代码关联起来。
我不确定代码的哪一部分错位了,或者是否有任何额外的功能,例如 var index;
import 'package:curved_navigation_bar/curved_navigation_bar.dart';
import 'package:flutter/material.dart';
import 'package:gg/tabBarScreens/Following.dart';
import 'package:gg/tabBarScreens/Liked%20Albums.dart';
import 'package:gg/tabBarScreens/profileTabBar.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatefulWidget {
//State class
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
int page = 0;
Widget buildPages(){
var index;
switch (index){
case 2:
return profileTabBar();
case 1:
return likedAlbums();
case 0:
default: 0;
return Following();
}
}
GlobalKey<CurvedNavigationBarState> _bottomNavigationKey = GlobalKey();
@override
Widget build(BuildContext context) {
return MaterialApp( home: Scaffold(
bottomNavigationBar: CurvedNavigationBar(
key: _bottomNavigationKey,
items: <Widget>[
Icon(Icons.add, size: 30),
Icon(Icons.list, size: 30),
Icon(Icons.compare_arrows, size: 30),
],
onTap: (index) {
setState(() {
page = index;
});
},
),
body: buildPages(),
),
);
}
}
【问题讨论】: