Я хотел сделать простой калькулятор, используя Flutter, поэтому в TextField я установил TextDirection как справа налево.
child: TextField(
textDirection: TextDirection.rtl,
style: Theme.of(context).textTheme.title,
showCursor: true,
readOnly: true,
controller: displayController,
decoration: InputDecoration(
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(5),
)
),
),
Когда я нажимаю поднятую кнопку, метод onPressed работает следующим образом,
void digitHandler(String char)
{
displayController.text=displayController.text+char;
}
Этот параметр типа String изменяется в соответствии с кнопкой.
Но когда я нажимаю «.» Символ, курсор перемещается в начало этой строки.
Здесь я нажал 5,6 и затем точку (.) соответственно. Но он отображает «.56»:
Нет ничего плохого в методе Button onPressed и ничего плохого в виджете TextField.