こんにちは、マージ アダプタにビューを追加しようとしていますが、その方法がよくわかりません。2 つのリストの間にヘッダー バーを追加したいと考えています。これまでのところ、1 つのリストにデータを入力する 3 つの arrayadapters があり、それぞれの間にヘッダーを追加したいと考えています。ヘッダーに使用したい .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)