Длинная строка в InputField обрезается при сохранении - PullRequest
0 голосов
/ 29 августа 2018

Я кодирую игру для Android в Unity и хочу, чтобы пользователь мог вводить длинную строку в поле ввода и затем отображать ее в другом текстовом компоненте.

Проблема заключается в том, что, хотя текстовое ограничение поля ввода установлено на 0 (поэтому оно бесконечно, согласно документации Unity), когда я набираю очень длинную строку, она обрезает ее до видимой части, например:

1
2
3
4
5
6
7
8
9
10

Будет вырезано так:

1
2
3
4
5
6

Поскольку рамка текстового поля недостаточно велика.

Это на самом деле не проблема программирования, но я надеюсь, что кто-то здесь может помочь мне исправить это.

1 Ответ

0 голосов
/ 29 августа 2018

Я только что нашел ответ!

Я получал текст поля ввода через текстовый компонент поля ввода

string text = my_UI_ellement.GetComponent<InputField>().textComponent.text;

Но текстовый компонент - это компонент, который поле ввода использует для визуализации текста на экране , что означает, что переполняющий текст по горизонтали или вертикали не сохраняется в текстовом компоненте.

Поэтому вместо этого я использовал текстовый компонент напрямую:

string text = my_UI_ellement.GetComponent<InputField>().text;

И полученная строка была полной строкой!

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