#java #android #listview #android_linearlayout
Я использую xml парсер для вывода информации в ListView, xml кодЭтим кодом я добавляю в лист объекты парсера XmlPullParserFactory factory = XmlPullParserFactory.newInstance(); factory.setNamespaceAware(true); XmlPullParser parser = factory.newPullParser(); URL input = new URL("news.xml"); parser.setInput(input.openStream(), null); while (parser.getEventType() != XmlPullParser.END_DOCUMENT) { if (parser.getEventType() == XmlPullParser.START_TAG && parser.getName().equals("contact")) { list.add(parser.getAttributeValue(0) + "\n" + "\n" + parser.getAttributeValue(1) + "\n"); } parser.next(); } При простейщем тесте все объекты на месте, но в данном случае показывается только один. На сколько я понимаю - при каждом добавлении объекта нужно создавать новый LinearLayout вместе с виджетом и списком? не могу понять, как это сделать
Ответы
Ответ 1
Проблема решена. добавил этому элементу NestedScrollView аттрибут fillViewport="true", теперь все отображается корректно, и все новости работаютОтвет 2
У вас у CardView высота по высоте содержимого. А она равна высоте одного элемента списка. Так что замените android:layout_height="wrap_content" на android:layout_height="match_parent"
Комментариев нет:
Отправить комментарий