привет всем, кому нужна помощь, чтобы установить динамическую высоту в список.Как настроить динамическую высоту для представления списка
В моей задаче есть listView внутри прокрутки, поэтому мне нужно установить динамическую высоту в виде списка, чтобы сделать задачу выполнимой в прокрутке.
Im, используя приведенный ниже код от how to change the height of the ListView dynamically in andrtoid. Этот код работает хорошо, но проблема заключается в этом коде, что делает высоту разреза для просмотра списка.
предположит, если только 3 пунктов в списке, то это сделать высоту ListView равна 6 пунктов.
Я хочу знать, как его решить.
Вот мой код.
public class Utility {
public static void setListViewHeightBasedOnChildren(ListView listView) {
ListAdapter listAdapter = listView.getAdapter();
if (listAdapter == null) {
// pre-condition
return;
}
int totalHeight = 0;
int desiredWidth = View.MeasureSpec.makeMeasureSpec(listView.getWidth(), View.MeasureSpec.AT_MOST);
for (int i = 0; i < listAdapter.getCount(); i++) {
View listItem = listAdapter.getView(i, null, listView);
listItem.measure(desiredWidth, View.MeasureSpec.UNSPECIFIED);
totalHeight += listItem.getMeasuredHeight();
}
ViewGroup.LayoutParams params = listView.getLayoutParams();
params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));
listView.setLayoutParams(params);
listView.requestLayout();
}
}
И им, используя его в списке следует деятельности, как:
SimpleAdapter simpleadapter = new SimpleAdapter(getApplicationContext(), alist, R.layout.fragmentsrow, getItems, setItems);
ListViewWelcomePage.setAdapter(simpleadapter);
Utility.setListViewHeightBasedOnChildren(ListViewWelcomePage);
Прежде всего, если вы используете listview, тогда удалите Scrollview. По умолчанию, если в списке больше данных, оно будет прокручиваться. – Tara
Мне нужен просмотр прокрутки, я не могу удалить прокрутку, потому что есть другие элементы под списком, которые мне нужно отображать с помощью прокрутки. – sunny
Используйте нижний колонтитул или заголовок в виде списка, а не в виде списка в виде прокрутки. Что-то вроде [this] (http://stackoverflow.com/questions/4265228/how-to-add-a-footer-in-listview) – MrOnyszko