React Native - 图像背景内容越过屏幕

React Native - Image Background content went past the screen

我正在向我的应用程序添加图像背景,但图像的水平部分超出了屏幕(左右部分被剪切)。我尝试使用 resizeMode cover 和 contain,但两者都没有做任何事情。有没有其他方法可以使图像停留在屏幕内? (我在 Image 上使用 resizeMode,它通常包含图像 {same picture})。

import React from 'react';
import {
  Image,
  ImageBackground,
  StyleSheet,
  Text,
  TouchableOpacity,
  View,
} from 'react-native';
import {DCTBACKGROUND} from '../../../assets/images';

export default function GetStarted({navigation}) {
  return (
    <ImageBackground source={DCTBACKGROUND} style={styles.page}>
      <View style={styles.buttonContainer}>
        <TouchableOpacity
          style={styles.button}
          onPress={() => {
            navigation.navigate('Register');
          }}>
          <Text style={styles.buttonText}>Registrasi</Text>
        </TouchableOpacity>
        <TouchableOpacity
          style={styles.button}
          onPress={() => {
            navigation.navigate('Login');
          }}>
          <Text style={styles.buttonText}>Login</Text>
        </TouchableOpacity>
      </View>
    </ImageBackground>
  );
}

const styles = StyleSheet.create({
  page: {
    backgroundColor: '#90CC8B',
    flex: 1,
    paddingHorizontal: 15,
    paddingVertical: 25,
    // resizeMode: 'contain',
  },
  button: {
    backgroundColor: 'yellow',
    width: 100,
    height: 40,
    alignItems: 'center',
    justifyContent: 'center',
    borderWidth: 1,
  },
  buttonText: {
    color: 'black',
  },
  buttonContainer: {
    justifyContent: 'space-between',
    flexDirection: 'row',
  },
  logo: {
    alignItems: 'center',
    justifyContent: 'center',
    flex: 1,
  },
});

图片水平部分被剪掉了一点,我需要让它在不被剪掉的情况下全部显示出来。

将 resizeMode 作为直接属性添加到 ImageBackground,而不是样式表的一部分。

 <ImageBackground resizeMode="contain" source={DCTBACKGROUND} style={styles.page}>