gpt4 book ai didi

android - 为什么 Google Flutter 中底部导航栏中的类似项目的文本大小不同?

转载 作者:行者123 更新时间:2023-12-03 04:20:21 25 4
gpt4 key购买 nike

我相信我在 Google Flutter 的 bottomNavigationBar 小部件中发现了一些意外行为。
行为 : 类似 items类型 BottomNavigationBarItem具有不同大小的文本,这似乎是由于除了第一项之外的每个项上都存在一些额外的填充。
重现步骤 :在 iOS 模拟器和/或 Android 模拟器上运行以下 dart 代码。
我的问题 : 为什么在bottomNavigationBar中渲染的文本大小不同,即'Make Call A' vs 'Make Call B'?如果是由于某处有额外的填充,那是从哪里来的?可以做些什么来摆脱额外的填充?
代码 :

import 'package:flutter/material.dart';

void main() {
runApp(MyApp());
}

class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData.light(),
home: new Scaffold(
appBar: new AppBar(
title: Text('Test Application'),
),
body: Container(),
bottomNavigationBar: new BottomNavigationBar(
backgroundColor: Colors.blue,
items: [
new BottomNavigationBarItem(
icon: new Icon(
Icons.phone,
color: Color(0xFF572F88),
),
title: new Text(
"Make Call\nA",
style: TextStyle(
fontSize: 12,
color: Colors.white,
fontWeight: FontWeight.w500,
),
textAlign: TextAlign.center,
),
),
new BottomNavigationBarItem(
icon: new Icon(
Icons.phone,
color: Color(0xFF572F88),
),
title: new Text(
"Make Call\nB",
style: TextStyle(
fontSize: 12,
color: Colors.white,
fontWeight: FontWeight.w500,
),
textAlign: TextAlign.center,
),
),
],
),
),
);
}
}
问题图解 :
iPhone 11 Pro Max Emulator Screenshot

最佳答案

两个项目的文本大小不同的原因是 BottomNavigationBar其文本具有不同的字体大小,具体取决于它们是否被选中。
所选项目的字体大小默认为 14.0 [ selectedFontSize ] 而未选中项的默认值为 12.0 unselectedFontSize .
所以这不是由于额外的填充。
您可以通过将它们设置为相同的值来确保文本大小是统一的。如下所示:

BottomNavigationBar(
selectedFontSize: 12.0,
unselectedFontSize: 12.0,
//rest of the code
)

关于android - 为什么 Google Flutter 中底部导航栏中的类似项目的文本大小不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63025840/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com