react-native - 更改 Picker.Item 字体系列 React native?
问题描述
<Picker
// selectedValue={this.state.language}
selectedValue="USD"
style={{ height: 50, width: 100, marginRight: 10, justifyContent: 'flex-start' }}
itemStyle={{ fontFamily: 'Roboto_thin' }}
// onValueChange={(itemValue, itemIndex) =>
// this.setState({ language: itemValue })
// }
>
<Picker.Item label="USD" value="java" />
<Picker.Item label="ETB" value="js" />
</Picker>
我想更改选择器项目的字体,并添加一个带有 fontFamily 值的属性 itemStyle。但是选择器项目的字体没有改变。
解决方案
正如罗比提到的,你可以使用itemStyle
道具。
但是,这是一个仅由iOS 平台itemStyle
支持的高级功能,您可以在此处的 React Native 文档中看到。因此,对于 Picker 项目的样式,例如更改、颜色等,目前只能使用Android 原生样式来完成。然后它将适用于两个平台。property
fontFamily
考虑到这一点,您将在文件中添加一个<style>
带有资源的新标签style.xml
,通常在路径中本地化:android/app/src/main/res/values/styles.xml
. 并将其设置AppTheme
为与添加的样式一起计数,例如:
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:spinnerItemStyle">@style/SpinnerItem</item>
<item name="android:spinnerDropDownItemStyle">@style/SpinnerDropDownItem</item>
</style>
<!-- Item selected font. -->
<style name="SpinnerItem" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:fontFamily">casual</item>
</style>
<!-- Dropdown options font. -->
<style name="SpinnerDropDownItem" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:fontFamily">casual</item>
<item name="android:padding">8dp</item>
</style>
<resources>
有用的链接:
- React Native Picker Android git 解决了问题。
推荐阅读
- php - PHP stripslashes() breaking emojis
- reactjs - 在 React Native 和/或类似性质的类似框架中采取抽象多远
- sql-server - 选择“N”组连续的“X”条记录
- php - 尝试使用 MySqli 时,我不断收到这些 PHP 错误消息
- java - 安装 JDBC 驱动程序以从 Matlab 访问 Mariadb 数据库
- python - Python:将三重组合成一个字符串
- javascript - 如何在 React 中编写一个无状态和无渲染的组件?
- angular - 在 Angular Web 应用程序中使用 GoogleSignInComponent 登录后验证请求
- mongodb - 使用 mongodb java 驱动程序,maxAwaitTime 无法处理更改流
- ruby - 无法运行 bundle exec rake