【发布时间】:2010-12-11 21:56:12
【问题描述】:
我有一个清单。 当您单击元素时,它会被选中,并且应该垂直扩展以显示更多数据。
我正在尝试通过添加到每个元素的布局“详细信息”视图来实现这一点,该视图被默认隐藏并设置为 VISIBLE onClick。
唯一的问题是元素的高度没有改变。 如果我这样尝试:
holder.line_view
.setLayoutParams(new LinearLayout.LayoutParams(
LayoutParams.FILL_PARENT, dip(
convertView.getContext(), 30)));
然后我得到未知的异常。 只是
holder.details_pane.setVisibility(View.VISIBLE);
不起作用,大小没有改变。
请指教。
布局:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@+id/line_view">
<TextView
android:id="@+id/desc"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="Description" />
<TextView
android:text="LALALA"
android:id="@+id/detailed_desc"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
在适配器中我尝试:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
...
switch (getItemViewType(position)) {
case TYPE_ITEM_EXPANDED:
holder.details_pane.setVisibility(View.VISIBLE);
...
case TYPE_ITEM_NORMAL:
holder.details_pane.setVisibility(View.GONE);
}
【问题讨论】:
标签: android listview android-layout