嗨,我正在尝试向合并适配器添加视图,但我不完全确定该怎么做。我想在两个列表之间添加一个标题栏。到目前为止,我有 3 个阵列适配器填充一个列表,我想在每个列表之间添加一个标题。我有一个要用于标题的 .xml 布局,或者以编程方式编写布局会更好。
这是我到目前为止所尝试的内容,但是当我滚动它时会不断出错,它会使应用程序崩溃。希望我已经说得够清楚了,因为我认为学习这个真的很有用。
arrayAdapter = new ArrayAdapter<String>(this, R.layout.single_item, newsList);
arrayAdapter2 = new ArrayAdapter<String>(this, R.layout.single_item, newsList2);
arrayAdapter3 = new ArrayAdapter<String>(this, R.layout.single_item, newsList3);
RelativeLayout layout = new RelativeLayout(this);
RelativeLayout.LayoutParams labelLayoutParams = new RelativeLayout.LayoutParams(
LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
layout.setLayoutParams(labelLayoutParams);
ImageView mImage = new ImageView(this);
mImage.setBackgroundResource(R.drawable.titlerect);
//layout.addView(mImage,labelLayoutParams);
//RelativeLayout rc = (RelativeLayout) findViewById(R.id.redcelllayout);
LayoutInflater inflater =
(LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View Header = inflater.inflate(R.layout.redcell, layout, true);
setListAdapter (arrayAdapter);
ListView list = getListView();
list.setTextFilterEnabled(true);
adapter = new MergeAdapter();
adapter.addAdapter(arrayAdapter);
adapter.addView(mImage);
adapter.addAdapter(arrayAdapter2);
adapter.addAdapter(arrayAdapter3);
setListAdapter(adapter);
}
这是标题栏的xml布局
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@+id/redcelllayout" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="match_parent"
android:layout_height="30dp"
android:src="@drawable/titlerect" />
<TextView
android:id="@+id/redheadertext"
android:layout_width="match_parent"
android:layout_height="30dp"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:gravity="left"
android:paddingLeft="15dp"
android:paddingTop="3dp"
android:textColor="@color/white"
android:textSize="15dp"
android:textStyle="bold"/>
这也是我得到的错误
05-11 09:51:06.187: E/AndroidRuntime(8598): java.lang.ClassCastException: android.widget.RelativeLayout$LayoutParams
05-11 09:51:06.187: E/AndroidRuntime(8598): at android.widget.ListView.setupChild(ListView.java:1834)
05-11 09:51:06.187: E/AndroidRuntime(8598): at android.widget.ListView.makeAndAddView(ListView.java:1803)
05-11 09:51:06.187: E/AndroidRuntime(8598): at android.widget.ListView.fillDown(ListView.java:670)
05-11 09:51:06.187: E/AndroidRuntime(8598): at android.widget.ListView.fillGap(ListView.java:641)