Tre*_*rey 9 javascript picker reactjs react-native
有什么方法可以设置单个 Picker.Items 的样式吗?除了文字颜色?
另外,有点相关, Picker.Item 需要什么道具?我知道他们会接受“键”、“值”、“标签”和“颜色”。但还有其他人吗?
我正在尝试以与该 Picker 中的 Picker.Items 的其余部分不同的方式为我的 Picker 组件中的 Picker.Item 之一设置样式。
具体来说,我正在尝试修改 fontWeight,但除了具有该颜色属性的文本颜色之外,我无法更改任何样式。
我知道您可以使用 itemStyle 作为 Picker 组件的道具来设置所有项目的样式,但是如果您希望其中一个看起来与其他项目略有不同怎么办?有没有办法做到这一点?
<Picker
style={{height: 130, width: 130}}
selectedValue={this.state.day}
itemStyle={{height: 130, fontFamily: 'Rubik-Regular'}}
onValueChange={(itemValue, itemIndex) => this.setState({day: itemValue})}
>
<Picker.Item label="Day" value={-1} color='red'/>
{ validDays.map((i) => ( <Picker.Item key={i} label={i.toString()} value={i} /> )) }
</Picker>
Run Code Online (Sandbox Code Playgroud)
试图改变第一个 Picker.Item (label="Day") 的样子。我尝试弄乱样式道具但没有成功:
<Picker.Item label="Day" value={-1} style={{ color: 'red'}}/>
Run Code Online (Sandbox Code Playgroud)
还尝试搞乱给 label 一个 Text 组件,如下所示:
<Picker.Item label={(<Text>Hello</Text>)} value={-1}/>
Run Code Online (Sandbox Code Playgroud)
那根本不会渲染。抛出一个错误。
还试过:
<Picker.Item label="" value={-1} color='red'><Text>Hello</Text></Picker.Item>
Run Code Online (Sandbox Code Playgroud)
Picker.ios.js和PickerAndroid.android.jsPicker.Item中提到了您可以使用的唯一道具
static propTypes = {
value: PropTypes.any, // string or integer basically
label: PropTypes.string,
color: PropTypes.string,
};
Run Code Online (Sandbox Code Playgroud)
因此,您不能为其提供任何其他值。
| 归档时间: |
|
| 查看次数: |
7809 次 |
| 最近记录: |