我需要你的幫助!我的目標是在點擊按鈕後改變按鈕的樣式!我聽說direct manipulation,我決定試一試。現在我不知道爲什麼,但是我的TouchableOpacity中的onPress不起作用。下面是代碼:onPress在TouchableOpacity不會觸發
<TouchableOpacity onPress={() => this.changeStyle}>
<TouchableHighlight style={styles.answer} ref="answer1">
<Text ...> Some Text </Text>
</TouchableHighlight>
</TouchableOpacity>
,這裏是我的changeStyle功能:
changeStyle() {
this.refs['answer1'].setNativeProps({
style: { backgroundColor: "#13a88a"}
});
}
現在我不知道爲什麼,但「onPress」永遠不會觸發。 謝謝你的回答!
添加'onPress'到'TouchableHighlight'和輸出的東西來測試是否這需要該事件。我懷疑它會這樣做。 – G0dsquad
@ G0dsquad我已經做到了,裏面TouchableHighlight的onPress工作。問題是我不能調用裏面的函數changeStyle,因爲它是我想改變風格的TouchableHighlight。而setNativeProps只適用於容器的孩子(這裏的TouchableOpacity是容器,TouchableHighlight是孩子)。 –
可以請你加入'()''到this.changeStyle' –