如何在 React-Native 中设置 Navigator 的背景图片

How to set a background Image of Navigator in React-Native

我在 React-Native 中使用 Navigator 组件。

//...
render() {
    return (
        <Navigator
            ref="navigator"
            navigationBar={this.renderHeader()}
            sceneStyle={styles.container}
            initialRoute={{type: 'Home'}}
            renderScene={this.renderScene.bind(this)} />
    );
}

现在我需要为所有场景设置一个固定的背景图像,但我无法将 Navigator 组件包装在另一个视图中。

// No errors but background is ignored
render() {
    return (
        <View style={styles.navigatorContainer}>
            <Image source={require('image!logo-big')} style={styles.background} />  
            <Navigator
                ref="navigator"
                navigationBar={this.renderHeader()}
                sceneStyle={styles.container}
                initialRoute={{type: 'Home'}}
                renderScene={this.renderScene.bind(this)} />
        </View>
    );
}

var styles = StyleSheet.create({
    container: {
        flex: 1
    },
    background: {
        position: 'absolute',
        left: 0,
        top: 0,
        width: 1024,
        height: 768
    },
    navigatorContainer: {
        flex: 1,
        backgroundColor: '#FF0000'
    }
});

如果我将 backgroundColor 设置为 class NavigatorContainer,我可以看到红色背景,但它不适用于图像。

有什么建议吗?

找到解决方法:要显示背景图像,您必须将 navigatorContainer 的 backgroundColor 设置为 'transparent'。