目前我有以下布局
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_marginTop="9px"
android:layout_below="@+id/desc"
android:id="@+id/ll_item"
android:orientation="vertical"
android:paddingRight="3px"
android:paddingLeft="3px"
android:paddingBottom="5px"
android:paddingTop="5px"
android:background="@drawable/rounded_corner_lists" >
<!--
<ListView android:drawSelectorOnTop="false" android:id="@+id/lv" android:layout_height="fill_parent" android:layout_width="wrap_content" android:divider="#ddd" android:dividerHeight="1px" android:background="@drawable/white" />
-->
</LinearLayout>
我已注释掉的列表视图,我试图在 xml 中进行此操作,高度设置为 wrap_content,fill_parent,目前我正在使用以下代码以编程方式执行此操作
LinearLayout ll_item = (LinearLayout) this.findViewById(R.id.ll_item);
if(list.length() > 0)
{
ll_item.setVisibility(View.VISIBLE);
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT,calcListHeight(list));
listview = new ListView(this);
listview.setBackgroundResource(R.drawable.white);
listview.setDivider( new ColorDrawable(this.getResources().getColor(R.drawable.dividercolor)) );
listview.setDividerHeight(1);
listview.setCacheColorHint(0);
mAdapter = new JSONAdapter( list, this );
listview.setAdapter(mAdapter);
mAdapter.notifyDataSetChanged();
ll_item.addView(listview, lp);
}
这是结果
所以你可以在这张图片中看到,因为我在线性布局中包含列表视图以获得圆角外观,它不仅会自动拉伸以包含整个列表视图,有没有办法让这两个元素换行内容垂直所以没有我以编程方式设置高度就没有滚动?? ?
我想我应该提到的另一件事是我在滚动视图中拥有所有这些布局,因为我希望这个列表视图成为整个布局的一小部分,所以它就像
-scrollview
-textview
-textview
-linearlayout
-listview
- 按钮
这是我所拥有的更简单的布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:orientation="vertical" android:layout_height="fill_parent" android:layout_width="fill_parent"
android:background="@drawable/bg" xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/titlebar">
<ScrollView android:id="@+id/sv" android:layout_width="fill_parent" android:background="@drawable/bg"
android:layout_height="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android">
<RelativeLayout android:id="@+id/widget28"
android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="4dip"
>
<LinearLayout android:orientation="vertical" style="@style/rounded_corner_full_width_button"
android:id="@+id/editfields">
<ListView android:drawSelectorOnTop="false" android:id="@+id/lv" android:layout_height="fill_parent"
android:layout_width="wrap_content" android:divider="#ddd" android:dividerHeight="1px"
android:background="@drawable/white"/>
</LinearLayout>
</RelativeLayout>
</ScrollView>
</LinearLayout>