Я создаю приложение Flutter, которое всегда должно быть RTL (через хук MaterialApp
builder
). В приложении у меня есть контент со встроенными кнопками. Я использую Text.rich
с WidgetSpan
s, чтобы поместить кнопки в линию. Тем не менее, когда у меня несколько WidgetSpan
с подряд, они выкладывают LTR (см. Ниже пример трех подряд).
Что мне здесь не хватает? Как я могу заставить их расположиться в правильном направлении?
Вот пример, показывающий проблему:
import 'package:flutter/material.dart';
void main() async {
runApp(
MaterialApp(
debugShowCheckedModeBanner: false,
home: Scaffold(
body: Test(),
),
),
);
}
class Test extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Center(
child: Directionality(
textDirection: TextDirection.rtl,
child: Text.rich(
TextSpan(children: [
TextSpan(text: 'هذا اختبار'),
WidgetSpan(
child: Container(width: 10, height: 10, color: Colors.red)),
WidgetSpan(
child: Container(width: 10, height: 10, color: Colors.green)),
WidgetSpan(
child: Container(width: 10, height: 10, color: Colors.blue)),
]),
textDirection: TextDirection.rtl,
),
),
);
}
}