有没有办法对单个Picker.Items进行样式设置?除了文字颜色?
另外,有点相关,Picker.Item会采用什么道具? 我知道他们会拿“钥匙”,“价值”,“标签”和“颜色”。但还有其他人吗?
我试图在Picker组件中设置Picker.Item之一的方式与Picker中其他Picker.Items不同。
具体来说,我正在尝试修改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>
尝试更改第一个Picker.Item(label =“Day”)的内容。 我尝试弄乱风格道具但没有成功:
<Picker.Item label="Day" value={-1} style={{ color: 'red'}}/>
还试图给标签添加如下文本组件:
<Picker.Item label={(<Text>Hello</Text>)} value={-1}/>
根本不会呈现。扔错了。
也尝试过:
<Picker.Item label="" value={-1} color='red'><Text>Hello</Text></Picker.Item>
答案 0 :(得分:1)
Picker.ios.js和PickerAndroid.android.js
中提到了您可以用于Picker.Item
的唯一道具
static propTypes = {
value: PropTypes.any, // string or integer basically
label: PropTypes.string,
color: PropTypes.string,
};
因此,您无法提供任何其他值。