React-native android 样式化 textInput
React-native android Styling textInput
有没有办法在 react-native 中设置 textInput 的样式 android?
喜欢更改选中时的下划线颜色和光标颜色吗?
下划线颜色可以使用 underlineColorAndroid
属性: https://github.com/facebook/react-native/blob/master/Libraries/Components/TextInput/TextInput.js#L290
对于光标颜色,目前没有这样的 属性 公开。如果您想全局更改您应用中所有文本视图的自定义 android 主题,您始终可以为您的应用使用自定义主题(在此处了解更多信息:http://developer.android.com/guide/topics/ui/themes.html)
从 React Native 版本 0.21 开始,仍然无法通过视图道具设置光标颜色的样式。通过向我的应用程序主题添加自定义样式,我成功地设置了光标颜色样式。
您需要将此代码放在 styles.xml
文件中,该文件位于 React 项目的 android 文件夹中,位于 android/app/src/main/res/values/styles.xml
.
<resources>
<style name="AppTheme" parent="Theme.AppCompat.Light">
<!-- typical material style colors -->
<item name="colorPrimary">@color/kio_turquoise</item>
<item name="colorPrimaryDark">@color/kio_hot_pink</item>
<!-- sets cursor color -->
<item name="colorControlActivated">@android:color/black</item>
</style>
</resources>
请注意,此样式是全局样式,将为您的 React Native 应用中的所有 Android TextInput
视图设置光标颜色。
除了实施@Kio Krofovitch 解决方案外,我还在同一个 ../res/values 文件夹中制作了 color.xml 文件,我在其中写了类似以下内容:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="orange">#ff5500</color>
<color name="articlecolor">#3399FF</color>
<color name="article_title">#3399FF</color>
<color name="cachecolor">#8ad0e8</color>
</resources>
然后相应地编辑 styles.xml 如下:
...
<item name="colorControlActivated">@color/orange</item>
</style>
</resources>
实际上有一个用于 TextInput 的道具:
- selectionColor(改变光标颜色和选择颜色)
underlineColorAndroid(改变textInput的下划线颜色
Android)
<TextInput
underlineColorAndroid="#FF0000"
selectionColor="rgba(0,0,0,0.4)"
/>
这里是 documentation.
有没有办法在 react-native 中设置 textInput 的样式 android? 喜欢更改选中时的下划线颜色和光标颜色吗?
下划线颜色可以使用 underlineColorAndroid
属性: https://github.com/facebook/react-native/blob/master/Libraries/Components/TextInput/TextInput.js#L290
对于光标颜色,目前没有这样的 属性 公开。如果您想全局更改您应用中所有文本视图的自定义 android 主题,您始终可以为您的应用使用自定义主题(在此处了解更多信息:http://developer.android.com/guide/topics/ui/themes.html)
从 React Native 版本 0.21 开始,仍然无法通过视图道具设置光标颜色的样式。通过向我的应用程序主题添加自定义样式,我成功地设置了光标颜色样式。
您需要将此代码放在 styles.xml
文件中,该文件位于 React 项目的 android 文件夹中,位于 android/app/src/main/res/values/styles.xml
.
<resources>
<style name="AppTheme" parent="Theme.AppCompat.Light">
<!-- typical material style colors -->
<item name="colorPrimary">@color/kio_turquoise</item>
<item name="colorPrimaryDark">@color/kio_hot_pink</item>
<!-- sets cursor color -->
<item name="colorControlActivated">@android:color/black</item>
</style>
</resources>
请注意,此样式是全局样式,将为您的 React Native 应用中的所有 Android TextInput
视图设置光标颜色。
除了实施@Kio Krofovitch 解决方案外,我还在同一个 ../res/values 文件夹中制作了 color.xml 文件,我在其中写了类似以下内容:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="orange">#ff5500</color>
<color name="articlecolor">#3399FF</color>
<color name="article_title">#3399FF</color>
<color name="cachecolor">#8ad0e8</color>
</resources>
然后相应地编辑 styles.xml 如下:
...
<item name="colorControlActivated">@color/orange</item>
</style>
</resources>
实际上有一个用于 TextInput 的道具:
- selectionColor(改变光标颜色和选择颜色)
underlineColorAndroid(改变textInput的下划线颜色 Android)
<TextInput underlineColorAndroid="#FF0000" selectionColor="rgba(0,0,0,0.4)" />
这里是 documentation.