Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
29 of 196 menu
◀ ▶

Компонент ImageBackground

Компонент ImageBackground совмещает фон и содержимое в одном блоке. Картинка лежит позади дочерних элементов. Источник задают source, как у Image. Параметр style задает размер контейнера. Параметр imageStyle стилизует сам bitmap. Вписывание фона настраивают resizeMode из ResizeMode.

Синтаксис

<ImageBackground source={{ uri: 'https://example.com/a.png' }}> <Text>abcde</Text> </ImageBackground>

Параметры

Параметр Описание
source Источник фоновой картинки: uri или require.
style Стиль контейнера: ширина, высота и отступы блока.
imageStyle Стиль, который применяют к самой картинке фона.
children Дочерние элементы поверх фона.
resizeMode Как вписать фон в контейнер. Строка из перечисления ResizeMode.

Пример

Давайте положим текст поверх сетевой картинки:

import { ImageBackground, Text, StyleSheet } from 'react-native'; export default function App() { return ( <ImageBackground source={{ uri: 'https://example.com/a.png' }} style={styles.wrap} resizeMode="cover" > <Text style={styles.label}>abcde</Text> </ImageBackground> ); } const styles = StyleSheet.create({ wrap: { width: 200, height: 120, justifyContent: 'center', }, label: { textAlign: 'center', }, });

На экране блок с фоном и подписью 'abcde' по центру.

Пример

Давайте сдвинем фон через imageStyle, а рамку оставим в style:

import { ImageBackground, Text, StyleSheet } from 'react-native'; export default function App() { return ( <ImageBackground source={{ uri: 'https://example.com/a.png' }} style={styles.wrap} imageStyle={styles.bg} resizeMode="contain" > <Text>12345</Text> </ImageBackground> ); } const styles = StyleSheet.create({ wrap: { width: 160, height: 160, padding: 8, }, bg: { opacity: 0.8, }, });

На экране контейнер с отступом, полупрозрачный фон и текст '12345' сверху.

Смотрите также

  • компонент Image,
    который рисует только картинку без фона
  • перечисление ResizeMode,
    которое задает вписывание фона
  • компонент Text,
    который рисует строку поверх фона
  • класс StyleSheet,
    который собирает объект стиля
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить