Перечисление ImageRepeat
Перечисление ImageRepeat передают в параметр repeat
у Image
и DecorationImage.
Имеет смысл, когда картинка меньше области
и её нужно размножить по горизонтали, вертикали или в обе стороны.
Синтаксис
ImageRepeat.repeat
Значения
| Значение | Описание |
|---|---|
repeat |
Повторяет картинку по обеим осям, заполняя всю область плиткой. |
repeatX |
Повторяет только по горизонтали. По вертикали одна полоса. |
repeatY |
Повторяет только по вертикали. По горизонтали одна колонка. |
noRepeat |
Рисует картинку один раз. Значение по умолчанию. |
Значение по умолчанию: noRepeat.
Пример
Давайте замостим фон контейнера мелкой текстурой:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Container(
width: 220,
height: 160,
decoration: BoxDecoration(
border: Border.all(color: Colors.grey),
image: DecorationImage(
image: AssetImage('assets/pic.png'),
repeat: ImageRepeat.repeat,
scale: 0.25,
),
),
),
),
),
),
);
}
На экране прямоугольник заполнится сеткой
из уменьшенной assets/pic.png.
Пример
Давайте повторим картинку только по горизонтали:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Container(
width: 240,
height: 80,
decoration: BoxDecoration(
image: DecorationImage(
image: AssetImage('assets/pic.png'),
repeat: ImageRepeat.repeatX,
scale: 0.3,
),
),
),
),
),
),
);
}
На экране полоса заполнится одной строкой повторяющихся фрагментов по ширине.
Смотрите также
-
перечисление
BoxFit,
которое масштабирует одну копию картинки -
класс
DecorationImage,
который принимаетrepeatдля фона -
класс
BoxDecoration,
в котором задают фоновую картинку -
виджет
Image,
который тоже поддерживаетrepeat