У меня есть линейная компоновка с горизонтальной ориентацией, в которой в ней мало изображений ImageViews (hardcoded in the xml). Я должен сортировать их на основе MultiselectListPreference (все проверенные сначала и не отмеченные позже). Чтобы поставить проверенные в начале, я попробовалКак сортировать файлы LinearLayout программно
((LinearLayout)imageView.getParent()).removeView(imageView);
((LinearLayout)imageView.getParent()).addView(imageView,0);
И ничего не сделал с непроверенным. Но он дает мне «указанный ребенок уже существует. Вы должны вызвать removeView (view) для данного родителя представления, хотя я уже назвал его. Это может быть потому, что все эти ImageViews присутствуют в xml. Как я могу получить желаемое расположение дочерних ImageView. Если вообще LinearLayout не хватает, должен ли я использовать RecyclerView здесь, было бы тяжелее?
Я определенно думаю, что в любое время, когда вы говорите о переупорядочении просмотров, вам лучше с RecyclerView или ListView какого-либо типа. Они созданы для такого рода работ и не будут нести большую стоимость нескольких ретрансляторов. –
Я смущен, так как «imageView.getParent()' будет работать, если вы просто удалили «imageView» из родительского представления ... –
@GabeSechan Я расскажу о Recycler впредь. – fanatic