Ответ 1
Используйте поле "Просмотр" public static final int GONE
.
В вашем случае textEdit.setVisibility(View.GONE)
или в xml android:visibility="gone"
Настройка представления на INVISIBLE
не учитывает макет, но GONE
делает.
Мне интересно, есть ли способ скрыть поле в Android.
Я попытался установить значение в TextEdit, а затем сделать TextEdit невидимым, но результатом является то, что это значение невидимо, но элемент управления занимает пробел.
В моем случае я хочу сохранить дополнительное значение в строке ListView.
Есть ли другое решение, кроме использования скрытых полей?
Используйте поле "Просмотр" public static final int GONE
.
В вашем случае textEdit.setVisibility(View.GONE)
или в xml android:visibility="gone"
Настройка представления на INVISIBLE
не учитывает макет, но GONE
делает.
View имеет методы setTag()
и getTag()
, которые можно использовать для связывания некоторых дополнительных данных с строкой ListView. Например, я использую класс CursorAdapter
и в методах newView()
и bindView()
я вызываю view.setTag()
. Затем в OnItemClickListener
я вызываю view.getTag()
.
Я уверен, что единственными невидимыми данными, содержащимися в строках ListView, являются id
(long). Я также пытался найти способ передать некоторые данные (например, uuid
) в обработчик щелчка строки, однако кажется, что "GONE" TextView - лучшее решение на данный момент...