maxFontSizeMultiplier works differently between iOS and Android
未关闭
还没有人认领这个 Issue。
Needs: Triage :mag:
Platform: Android
Platform: iOS
- 主要语言
- C++
- 星标
- 127k
- 派生
- 25.3k
- 平均合并
- 1 天 23 小时
- 30 天内合并 PR
- 4
描述
Description
maxFontSizeMultiplieraffects thefontSizeon both Android and iOS.- When font scaling is set to a value higher than
maxFontSizeMultiplier, both Android and iOS clamp thefontSizevalue - When it comes to
lineHeight, it acts differently. iOS clamps the value while Android ignores themaxFontSizeMultiplierforlineHeight
Please see the screenshots for a side-by-side comparison
Steps to reproduce
- Install he reproducer app with
yarn androidandyarn ios - Take a screenshot of the app so you can compare later
- Increase the font scaling. You can either use the settings app, or
cmd option +on iOS simulator, andadb shell settings put system font_scale <value>on Android - Take another screenshot and compare those two
React Native Version
0.85.2
Affected Platforms
Runtime - iOS, Runtime - Android
Output of npx @react-native-community/cli info
info Fetching system and libraries information...
System:
OS: macOS 15.7.4
CPU: (12) arm64 Apple M4 Pro
Memory: 258.47 MB / 48.00 GB
Shell:
version: 0.109.1
path: /Users/burakguner/.cargo/bin/nu
Binaries:
Node:
version: 24.13.0
path: /Users/burakguner/.nix-profile/bin/node
Yarn:
version: 1.22.22
path: /Users/burakguner/.nix-profile/bin/yarn
npm:
version: 11.6.2
path: /Users/burakguner/.nix-profile/bin/npm
Watchman:
version: 2026.01.19.00
path: /Users/burakguner/.nix-profile/bin/watchman
Managers:
CocoaPods:
version: 1.16.2
path: /Users/burakguner/.local/share/gem/ruby/3.3.0/bin/pod
SDKs:
iOS SDK:
Platforms:
- DriverKit 25.2
- iOS 26.2
- macOS 26.2
- tvOS 26.2
- visionOS 26.2
- watchOS 26.2
Android SDK:
API Levels:
- "30"
- "31"
- "34"
- "35"
- "36"
Build Tools:
- 35.0.0
- 36.0.0
- 36.1.0
System Images:
- android-30 | ARM 64 v8a
- android-34 | Google Play ARM 64 v8a
- android-35 | Google APIs ARM 64 v8a
- android-35 | Google Play ARM 64 v8a
- android-36.1 | Google Play ARM 64 v8a
Android NDK: Not Found
IDEs:
Android Studio: 2025.3 AI-253.32098.37.2534.15232325
Xcode:
version: 26.2/17C52
path: /usr/bin/xcodebuild
Languages:
Java:
version: 21.0.8
path: /Users/burakguner/.nix-profile/bin/javac
Ruby:
version: 3.4.8
path: /Users/burakguner/.nix-profile/bin/ruby
npmPackages:
"@react-native-community/cli":
installed: 20.1.0
wanted: 20.1.0
react:
installed: 19.2.3
wanted: 19.2.3
react-native:
installed: 0.85.2
wanted: 0.85.2
react-native-macos: Not Found
npmGlobalPackages:
"*react-native*": Not Found
Android:
hermesEnabled: true
newArchEnabled: true
iOS:
hermesEnabled: true
newArchEnabled: true
Stacktrace or Logs
N/A
MANDATORY Reproducer
https://github.com/atlj/reproducer-max-font-size-multiplier-line-height
Screenshots and Videos
| Font Scale | iOS | Android |
|---|---|---|
| 1 | ||
| 2.143 |
Notice how lineHeight is not clamped on Android screenshots
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
从必需的复现应用开始,并使用 yarn android 和 yarn ios 运行它。使用 issue 的设置命令,在正常和增大的字体缩放下比较屏幕截图;完成的标准是 Android 的 lineHeight 与 iOS 一致地由 maxFontSizeMultiplier 限制。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- android, ios, react-native
- 领域
- mobile
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 冷清
- 描述清晰度
- 基本清楚
- 新手友好度
- 48/100