我遇到一个问题,即我的可触摸不透明度onPress无法触发。我确定它不起作用,因为当我按下它时,没有控制台记录到系统。
我的按钮组件:
const FloatingPlusButton = (props) => {
return (
<View style={styles.buttonStyle}>
<TouchableOpacity onPress={props.tapToAddEvent}>
<MaterialIcons
name='add'
size={45}
color='#28313b'
/>
</TouchableOpacity>
</View>
);
};
我称之为:
class HomeScreen extends Component {
constructor() {
super();
this.state = {
textInput: '',
inputVisible: true
};
}
onFloatingButtonPress() {
this.setState({ inputVisible: true }, () => { this.textInputField.focus(); });
console.log('p');
}
render() {
return (
<View style={{ flex: 1, height: HEIGHT }}>
{ !this.state.inputVisible &&
<FloatingPlusButton tapToAddEvent={this.onFloatingButtonPress.bind(this)} />
}
</View>
);
}
}
为清楚起见,我确实看到该按钮,而inputVisible道具不是问题。当我按它时什么也没有发生。我同时使用.bind(this)和没有它都尝试过,但都没有用。
答案 0 :(得分:0)
我能够弄清楚。我必须使按钮的zIndex大于根视图组件的zIndex。谢谢大家的帮助。