Flutter Cupertino 图标不显示
Flutter Cupertino Icon not displaying
我是 Flutter 的新手,我正在尝试创建一个导航栏,导航栏的两侧都有两个图标。我正在使用 Windows Android Studio 和那里的 android 模拟器。
但是,目前只显示尾随图标,不显示前导图标。我不确定为什么会这样(是因为我使用的是 android 模拟器吗?)。在这里会很感激一些帮助。谢谢!
已编辑:折叠栏时,前导图标也不会显示,即使它与尾随图标共享相同的代码。我试过谷歌搜索,但这似乎不是一个常见问题?
这是我的代码片段:
home.dart
class HomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return CupertinoPageScaffold(
child: NestedScrollView(
headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) {
return <Widget>[
Heading(
headingTitle: 'Ambisense',
leadingIcon: Icon(CupertinoIcons.bars),
trailingIcon: Icon(CupertinoIcons.gear_alt_fill),
)
];
},
body: Center(
child: Text('Home Page'),
)
),
);
}
heading.dart
class Heading extends StatelessWidget with ObstructingPreferredSizeWidget {
final String headingTitle;
final Icon leadingIcon;
final Icon trailingIcon;
Heading({
@required this.headingTitle,
@required this.leadingIcon,
@required this.trailingIcon
});
@override
Widget build(BuildContext context) {
return CupertinoSliverNavigationBar(
largeTitle: Text(headingTitle),
leading: this.leadingIcon,
trailing: this.trailingIcon,
);
}
@override
// TODO: implement preferredSize
Size get preferredSize => throw UnimplementedError();
@override
bool shouldFullyObstruct(BuildContext context) {
// TODO: implement shouldFullyObstruct
throw UnimplementedError();
}
}
我怀疑问题出在使用 android 模拟器上,因为 Cupertino 设计用于 ioS。我试过使用其他一些 CupertinoIcons,有些出现,有些没有。但是,该问题的解决方法是使用 Icon collection from the Material class 而不是 CupertinoIcons。
我一直在寻找菜单图标,所以使用了 IconData(0xf2fb, fontFamily: 'MaterialIcons')
。
我是 Flutter 的新手,我正在尝试创建一个导航栏,导航栏的两侧都有两个图标。我正在使用 Windows Android Studio 和那里的 android 模拟器。
但是,目前只显示尾随图标,不显示前导图标。我不确定为什么会这样(是因为我使用的是 android 模拟器吗?)。在这里会很感激一些帮助。谢谢!
已编辑:折叠栏时,前导图标也不会显示,即使它与尾随图标共享相同的代码。我试过谷歌搜索,但这似乎不是一个常见问题?
这是我的代码片段:
home.dart
class HomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return CupertinoPageScaffold(
child: NestedScrollView(
headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) {
return <Widget>[
Heading(
headingTitle: 'Ambisense',
leadingIcon: Icon(CupertinoIcons.bars),
trailingIcon: Icon(CupertinoIcons.gear_alt_fill),
)
];
},
body: Center(
child: Text('Home Page'),
)
),
);
}
heading.dart
class Heading extends StatelessWidget with ObstructingPreferredSizeWidget {
final String headingTitle;
final Icon leadingIcon;
final Icon trailingIcon;
Heading({
@required this.headingTitle,
@required this.leadingIcon,
@required this.trailingIcon
});
@override
Widget build(BuildContext context) {
return CupertinoSliverNavigationBar(
largeTitle: Text(headingTitle),
leading: this.leadingIcon,
trailing: this.trailingIcon,
);
}
@override
// TODO: implement preferredSize
Size get preferredSize => throw UnimplementedError();
@override
bool shouldFullyObstruct(BuildContext context) {
// TODO: implement shouldFullyObstruct
throw UnimplementedError();
}
}
我怀疑问题出在使用 android 模拟器上,因为 Cupertino 设计用于 ioS。我试过使用其他一些 CupertinoIcons,有些出现,有些没有。但是,该问题的解决方法是使用 Icon collection from the Material class 而不是 CupertinoIcons。
我一直在寻找菜单图标,所以使用了 IconData(0xf2fb, fontFamily: 'MaterialIcons')
。