显示字段的可扩展视图

Posted

技术标签:

【中文标题】显示字段的可扩展视图【英文标题】:Expandable View to Show fields 【发布时间】:2015-08-26 11:28:00 【问题描述】:

我想创建一个可展开的列表视图,除非在这种情况下,当单击列表项时,我不想只显示另一个字符串列表,而是希望它显示带有文本字段的布局和下拉菜单等。

到目前为止,我有带有 textview 的 parentlayout 来显示标题,childlayout 中带有字段。只是不确定如何在列表项单击时显示子布局。任何帮助是极大的赞赏!

HashMap<String, List<String>> 如果我想显示一个字符串列表,那么在我的情况下,我应该使用什么? HashMap<String, ?>这里有什么?

【问题讨论】:

【参考方案1】:

看起来您正在寻找类似 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/

【讨论】:

那个例子和我见过的所有其他例子都在做同样的事情。具有静态字符串数组子组的组.. 仍然不确定如何拥有实际可编辑内容的子组【参考方案2】:

我最终做的事情是,我创建了一个线性布局,其中包含我需要的所有字段,并添加了一些文本视图作为部分标题,这更容易、更有效。然后我就这样声明了

在创建时

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

然后写了一个方法叫toggle

 public void toggle_basicInfo(View v)

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

我的 xml 看起来像

<TextView
            android:layout_
            android:layout_
            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" />

当我单击我的文本视图时,它将隐藏/显示您定义要隐藏的任何内容。例如,您可以隐藏 LinearLayout 等。同样通过这种方式,文本字段的状态条目在隐藏和显示时会保持不变。

【讨论】:

以上是关于显示字段的可扩展视图的主要内容,如果未能解决你的问题,请参考以下文章

Xamarin 表单中具有不同子项的可扩展 ListView

ios的可扩展单元格表格视图最佳实践

更改 ExpandableListView 中的可扩展指示器

将文本字段数据保存在 xcode 中的可扩展表格单元格中

iphone中的可扩展tableView

iphone中的可扩展tableView