0

初心者アンドロイドプログラマーはこちら

メインのアクティビティ クラスでは、コンテンツ ビューを に設定しましたHome_Screen。このHome_Screenxml ファイルには、ListView があります。row_layoutこのリスト ビューの行を記述するために、次のような別のカスタム xml ファイルを作成しました。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

    <ImageView
        android:id="@+id/icon"
        android:layout_width="48dp"
        android:layout_height="48dp"
        android:gravity="left|center_vertical"
        android:layout_alignParentLeft="true"
        android:src="@drawable/ic_launcher" >
    </ImageView>

    <CheckedTextView
        android:id="@+id/checkedTextView"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center_vertical"
        android:layout_toRightOf="@+id/icon"
        android:minHeight="?android:attr/listPreferredItemHeight"
        android:paddingLeft="6dip"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:checkMark="?android:attr/listChoiceIndicatorMultiple"
        android:clickable="true"
        android:focusable="true"
        android:textColor="@color/darkish_blue" >
    </CheckedTextView>

</RelativeLayout>

問題は、findviewbyid使用する必要があるチェックボックスが含まれているため、CheckedTextView に Android が必要ですが、nullpointer 例外が発生することです。

CheckedTextView chkBox = (CheckedTextView) findViewById(R.id.checkedTextView);
chkBox.setOnClickListener(new View.OnClickListener() {//<===== null pointer here!!
            public void onClick(View v)
            {
                ((CheckedTextView) v).toggle();
            }
        });

row_layoutファイルが見つかる場所のリストビューにファイルを組み込むことができるかもしれないと思ってhome_screenいましたが、方法がわかりません...助けていただければ幸いです。ありがとうございます。

4

3 に答える 3