0

私はAndroidの世界の初心者です。タブ内(または実際にはアクティビティ内)にListViewを追加しようとしましたが、各リストビューには、テキスト、画像などのコンポーネントを含む別のビューが表示されます。このコンポーネントは動的である必要があり、ソースプログラム内で設定されます

リストビューのレイアウト:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout android:layout_width="80dip"
    android:layout_height="?android:attr/listPreferredItemHeight" android:gravity="center">
    <ImageView android:id="@+id/img" android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
</LinearLayout>
<LinearLayout android:layout_width="wrap_content"
    android:layout_height="fill_parent" >
    <TextView android:id="@+id/name" android:layout_width="fill_parent"
        android:layout_height="?android:attr/listPreferredItemHeight" android:textSize="18dip"
        android:paddingLeft="10dip" android:gravity="center_vertical" />
</LinearLayout>

onListItemClick :

protected void onListItemClick(ListView l, View v, int position, long id) {
    try {
        // TODO Auto-generated method stub
        super.onListItemClick(l, v, position, id);
        // TODO Auto-generated method stub
        LayoutInflater factory = getLayoutInflater();
        View detailview = factory.inflate(R.layout.top_detail,null);

        ImageView detailimg = (ImageView) detailview.findViewById(R.id.img_detail);
        TextView detailtxt = (TextView) detailview.findViewById(R.id.txt_detail);

        if (position == SUKIMA) {
            detailimg.setImageResource(R.drawable.sukima);
            detailtxt.setText(R.string.sukima_detail);
        } else if (position == TAJUUJIN) {
            detailimg.setImageResource(R.drawable.pu_tajuujin);
            detailtxt.setText(R.string.tajuujin_detail);
        } else if (position == LOVERS) {
            detailimg.setImageResource(R.drawable.pu_lovers);
            detailtxt.setText(R.string.lovers_detail);
        }

        this.flipper.setInAnimation(AnimationSanmon.inFromRightAnimation());
        this.flipper.setOutAnimation(AnimationSanmon.outToLeftAnimation());
        this.flipper.showNext();

        detailimg.setImageDrawable(detailview.getResources().getDrawable(R.drawable.sukima));
        detailtxt.setText(R.string.sukima_detail);

    } catch (Exception e) {
        e.printStackTrace();
    }
}

setImageResource と setText を使用して画像とテキストを設定しようとしていることがわかりますが、実行した後、このテキストと画像のコンポーネントは更新されませんでした。

この問題の解決に感謝します。

敬具、アル

4

1 に答える 1

0

数行のコードを膨張させて構成するのに費やしますdetailviewdetailviewただし、その後はどこでも使用しません。

于 2010-06-15T12:23:35.457 に答える