flutter textField Курсор неуместен в TextAlign.center или TextAlign.right - PullRequest
0 голосов
/ 03 августа 2020

В textField Курсор смещается при выравнивании текста TextAlign.center или TextAlign.right (TextAlign.end).

См. Прикрепленный файл.

good.gif click -> 1

misplace.gif click -> 2

Это имеет некоторые условия и результаты.

Условия.

  1. textAlign равно TextAlign.center или TextAlign.right (TextAlign.end).

  2. Курсор должен находиться в последней строке каждой строки. (последний столбец)

  3. Курсор НЕ ДОЛЖЕН находиться в последней строке. (! последний в строке)

    ((TextAlign.center || TextAlign.right || TextAlign.end) && Курсор в последнем столбце &&! Курсор в последнем столбце)

Результаты Курсор располагается точно так же, как textAlign.start или textAlign.left. (Вроде для текстов применяется опция выравнивания. Но курсора нет.)

Кто-нибудь может решить эту проблему? пожалуйста, помогите мне.

Или есть плагины, которые могут использовать android editText и swift UiTextField? Выравнивание флаттера и некоторые проблемы с клавиатурой сводят меня с ума.

добавление: В моем коде нет ничего особенного. Можно протестировать в коде basi c.

например TextField( maxLines: null, textAlign: TextAlign.end );

или TextField( maxLines: null, textAlign: TextAlign.center );

1 Ответ

0 голосов
/ 03 августа 2020
TextField(        
              keyboardType: TextInputType.text,
              autofocus: true,
              decoration: InputDecoration(
                border: OutlineInputBorder(
                    borderRadius: BorderRadius.circular(30),
                    borderSide: BorderSide.none),
              ),
              onChanged: (value) {
                this._keyword = value;
              },
              controller: TextEditingController.fromValue(TextEditingValue(
                  text: '${this._keyword == null ? "" : this._keyword}',  

                  selection: TextSelection.fromPosition(TextPosition(
                      affinity: TextAffinity.downstream,
                      offset: '${this._keyword}'.length)))),
            ),
...