1

Я хочу создать расширяемое представление списка, за исключением того, что в этом случае при щелчке элемента списка я не хочу просто показывать другой список строк, но я хочу, чтобы он показывал макет с текстовыми полями и выпадающими списками и т. д.Расширяемый просмотр для отображения полей

До сих пор у меня есть parentlayout с текстовым отображением, чтобы показать названия, childlayout с полями в нем. Просто не уверен, как показать дочерний макет в элементе списка. Любая помощь очень ценится!

HashMap<String, List<String>> будет использоваться, если бы я хотел показать список строк, поэтому в моем случае, что я использую? HashMap<String, ?> Что здесь?

enter image description here

ответ

0

Похоже, вы ищете что-то вроде BaseExpandableListAdapter. Вы можете настроить как групповые, так и дочерние представления с тем, что вы хотите. Вам просто нужно реализовать некоторые из методов. Например, getGroupView и getChildView вернут любой вид. Вы можете раздуть представление в этом методе и настроить его тоже.

Вот две статьи для справки: http://www.javacodegeeks.com/2013/06/android-expandablelistview-with-custom-adapter-baseexpandablelistadapter.html

http://theopentutorials.com/tutorials/android/listview/android-expandable-list-view-example/

+0

этот пример и все остальное, что я видел, делают то же самое. Группа с подгруппой статических строковых массивов. Все еще не уверен, как иметь подгруппу фактических редактируемых материалов –

0

То, что я в конечном итоге делает, что намного проще и эффективнее, я создал линейную компоновку со всеми полями я нуждался и добавил некоторые textviews для использования в качестве заголовков разделов. Тогда я объявил это как так

в OnCreate

textview= (LinearLayout)findViewById(R.id.textviewid); 
textview.setVisibility(View.GONE); 

Затем написал метод, называемый тумблер

public void toggle_basicInfo(View v){ 

      if(textview.isShown()){ 
       textview.setVisibility(View.GONE); 
      } 
      else { 
       textview.setVisibility(View.VISIBLE); 
      } 
     } 

мой XML выглядел

<TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Basic Info" 
      android:clickable="true" 
      android:onClick="toggle_basicInfo" 
      android:textSize="20sp" 
      android:paddingTop="8dp" 
      android:id="@+id/text" 
      android:layout_above="@+id/linearLayout" 
      android:layout_alignParentLeft="true" 
      android:layout_alignParentStart="true" 
      android:textColor="#ff3a65ff" /> 

, когда я нажимаю мой TextView, это скроет/покажет все, что вы определили, чтобы скрыть. например, вы можете скрыть LinearLayout и т. д. Кроме того, делая это так, записи состояния для текстовых полей сохраняются при скрытии и отображении.

Смежные вопросы