我想在我的 Android 项目中向 ViewGroup 添加一些视图,但我遇到了有线问题。
首先,我有一个 ListView 和一个 EditText,它们位于 Linearlayout 中。
我正在以这种方式创建这些:
LinearLayout linearLayout = new LinearLayout(getActivity());
linearLayout.setId(1001);
EditText eText = new EditText(getActivity());
eText.setHint("Suche");
eText.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
linearLayout.addView(eText);
在函数中onCreateView
,所以我只返回线性布局。
后来,在另一个函数中,我想添加 ListView:
modeList.setAdapter(adapter);
LinearLayout layout = (LinearLayout) vGroup.findViewById(1001);
layout.addView(modeList);
但它只显示 EditText 框。如果我不添加 EditText,它会显示 ListView,但行为不好:
左:ListView,右:使用 EditText
所以我的问题是:首先,为什么 ListView 不是全宽的?其次,如果我添加 EditText,为什么没有 ListView?
列表项 xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="10dp" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/txtTitle"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="top|left"
android:text="TEST"
android:textColor="#000000"
android:textSize="16sp"
android:textStyle="bold" />
<TextView
android:id="@+id/txtPosition"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="bottom|left"
android:text="drittens"
android:textColor="#0000ff"
android:textSize="12sp"
android:textStyle="bold" />
</LinearLayout>
<TextView
android:id="@+id/txtVideos"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="right|center_vertical"
android:text="nochmal"
android:textColor="#00ff00"
android:textSize="18sp"
android:textStyle="bold" />
</LinearLayout>