В Flutter TextField, когда я установил текст directrion как «Справа налево», некоторые символы устанавливаются в начале строки - PullRequest
0 голосов
/ 23 марта 2020

Я хотел сделать простой калькулятор, используя 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»:

In here I have pressed 5,6 and then dot(.) accordingly. But it displays

Нет ничего плохого в методе Button onPressed и ничего плохого в виджете TextField.

1 Ответ

0 голосов
/ 23 марта 2020

Я не уверен, почему это происходит. Если вы создаете калькулятор и хотите отображать данные, вы можете просто использовать виджет «Текст» и, соответственно, добавить свой текст / число в состояние.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...