Метод resolve
Метод resolve класса Alignment
получает направление письма и возвращает обычную точку.
У точки, где уже есть лево и право, результат тот же.
У точки с началом строки начало становится левым краем при письме слева направо и правым при обратном направлении.
Синтаксис
AlignmentDirectional.centerStart.resolve(TextDirection.ltr)
Параметры
| Параметр | Описание |
|---|---|
direction |
Направление письма. От него зависит, куда встанет начало строки. |
Пример
Давайте переведём начало строки при письме слева направо:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Builder(
builder: (context)
{
Alignment point = AlignmentDirectional.centerStart.resolve(TextDirection.ltr);
return Text(point.x.toStringAsFixed(0));
},
),
),
),
),
);
}
На экране -1. Начало строки слева, это левый край.
Пример
Давайте переведём то же начало при письме справа налево:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Builder(
builder: (context)
{
Alignment point = AlignmentDirectional.centerStart.resolve(TextDirection.rtl);
return Text(point.x.toStringAsFixed(0));
},
),
),
),
),
);
}
На экране 1. Начало строки теперь справа.
Смотрите также
-
метод
alongSize,
который переводит точку выравнивания в пиксели заданного размера -
метод
withinRect,
который переводит точку выравнивания в координаты внутри прямоугольника -
метод
lerp,
который смешивает две точки выравнивания в заданной доле -
класс
Align,
который ставит дочерний виджет в выбранную точку