用途:为 React Native 应用提供 Material Design 3(Material You)组件与主题化方案,基于 react-native-paper v5+,由 Callstack 维护。
主要能力:PaperProvider 与 MD3 主题(浅色、深色、自定义、Android 12+ 动态取色);组件使用(Button 五种模式、Card、TextInput、FAB、Appbar、Dialog、Snackbar、SegmentedButtons 等);BottomNavigation.Bar 与 React Navigation v7 底部标签集成;configureFonts 自定义字体与 TypeScript 文本变体;react-native-paper/babel 插件做打包优化;内置无障碍属性。
必要用法:应用根节点必须包在 PaperProvider 中;Dialog、Menu 等浮层必须包在 Portal 中;用 useTheme() 读取主题颜色与字体,不要硬编码 MD3 色值;生产环境在 babel.config.js 的 env.production.plugins 加入 react-native-paper/babel(仅对 ES2015 import 生效,require() 无效)。v5 起 react-native-safe-area-context 为必需 peer 依赖。
适用场景:需要 MD3 视觉层、主题化组件、底部导航栏与 React Navigation 主题桥接(adaptNavigationTheme)的项目。
限制:不涉及通用 React Native 组件架构、Paper 之外的导航模式、自定义动画或手势;旧 createMaterialBottomTabNavigator 自 v5.14 起弃用;MD2(version: 2)与 MD3 不能在同一 provider 共存;useTheme() 在 PaperProvider 外调用不报错但返回默认主题;Dialog 默认不支持滚动内容,需用 Dialog.ScrollArea;Snackbar 默认渲染在父容器底部,需 Portal 才能成为真正浮层;Card.Cover 无默认宽高比;Android StatusBar 不自动适配 Paper 主题;可变字体在部分平台可能渲染异常。具体收费、价格与平台支持资料暂未提供。