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

Метод translate

Метод translate класса Rect сдвигает прямоугольник на два числа и возвращает новый. translateX прибавляется к левому и правому краю, translateY к верхнему и нижнему. Ширина и высота остаются прежними. Отрицательное число сдвигает в другую сторону. Такой же сдвиг точкой Offset задаёт метод shift.

Синтаксис

rect.translate(8, 4)

Параметры

Параметр Описание
translateX На сколько сдвинуть вправо. Отрицательное число сдвигает влево.
translateY На сколько сдвинуть вниз. Отрицательное число сдвигает вверх.

Пример

Давайте сдвинем прямоугольник на 8 вправо и 4 вниз:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: Builder( builder: (context) { Rect rect = Rect.fromLTWH(10, 10, 40, 20).translate(8, 4); return Text(rect.left.toStringAsFixed(0) + ' ' + rect.top.toStringAsFixed(0) + ' ' + rect.width.toStringAsFixed(0) + ' ' + rect.height.toStringAsFixed(0)); }, ), ), ), ), ); }

На экране 18 14 40 20. Четыре числа это левый край, верхний край, ширина и высота.

Пример

Давайте сдвинем его вверх, второе число отрицательное:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: Builder( builder: (context) { Rect rect = Rect.fromLTWH(10, 10, 40, 20).translate(0, -6); return Text(rect.left.toStringAsFixed(0) + ' ' + rect.top.toStringAsFixed(0) + ' ' + rect.width.toStringAsFixed(0) + ' ' + rect.height.toStringAsFixed(0)); }, ), ), ), ), ); }

На экране 10 4 40 20. Верхний край стал меньше.

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

  • метод fromLTWH,
    который собирает прямоугольник из левого края, верхнего края, ширины и высоты
  • метод fromLTRB,
    который собирает прямоугольник из четырёх краёв
  • метод fromCenter,
    который собирает прямоугольник заданного размера вокруг точки
  • класс RRect,
    который хранит прямоугольник со скруглёнными углами
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить