У меня есть изображение, на котором я пытаюсь сосредоточить на нем текст.
Для этого я использую ImageBackground, чтобы иметь дочерние элементы изображения.
Однако изображение уменьшается на небольших устройствах и, если возможно, в полном размере.
Когда я центрирую свой текст, он центрируется после соотношения всего изображения (на большом экране, где вы можете видеть все изображение, оно центрировано, а на маленьких экранах - его смещение, потому что часть изображения обрезается по размеру.
<ImageBackground style = {{ width: wp('50%'),
height: hp('50%'),
resizeMode: 'cover',
justifyContent: 'center',
alignItems: 'center' }}
source = {require('../assets/images/12.jpg')}>
// if the full image is showing - it's centered, otherwise not!
<Text style = {{ color: "red" }}>Centered text</Text>
</ImageBackground>
вам нужно добавить дополнительный вид, чтобы обернуть фон изображения и добавить свойство стиля выровняйте Content и alignItems по центру, и я думаю, что это удалит вашу проблему.
<View style = {{ flex:1 , justifyContent: 'center', alignItems: 'center' }}>
<ImageBackground
style = {{ width: wp('50%'), height: hp('50%'), resizeMode: 'cover', justifyContent: 'center', alignItems: 'center' }}
source = {require('../assets/images/12.jpg')}>
// if the full image is showing - it's centered, otherwise not!
<Text style = {{ color: "red" }}>Centered text</Text>
</ImageBackground>
</View>
Я нахожусь на реакции, и добавление ширины в стиль изображения будет идеально центрировано.