Функция TextField isVisible() в LWUIT не работает должным образом
Я работаю над приложением для мобильных устройств с использованием библиотеки LWUIT. Его форма с контейнерами и компонентами. У меня есть контейнер c2, который содержит определенные элементы управления, такие как различные textFields, метки и т. Д. Я пытаюсь поставить проверки на нем. Но в некоторых случаях проверка должна работать только на тех компонентах, которые видны на экране. Например, у меня есть ситуация, когда контейнер c2 отсутствует на экране, и затем я пытаюсь проверить, виден ли он, с помощью следующего кода:
System.out.println(txt_Name.isVisible());
Несмотря на то, что он не виден на экране, он все равно отображается как ИСТИНА. Но я думаю, это должно показать ЛОЖЬ. Я попытался isEnabled, но это не в соответствии с моим требованием. У меня закончились идеи, и последним средством было ТАК. Любая помощь будет оценена.
1 ответ
Я думаю, что метод isVisible()
всегда возвращать логическое значение состояния Component
, Я имею в виду, если Component
отображается в интерфейсе, он вернет значение true, но показывать Component
на экране.
Если вы хотите проверить, если ваш Component
на экране или нет, я рекомендую вам проверить координаты вашего Component
с помощью getX()
а также getY()
и проверка, находится ли он на экране или нет. Попробуйте и расскажите нам, что у вас есть.