使用当前布局中不存在的CheckBox

时间:2015-09-30 08:35:54

标签: android

在我的应用程序中,我有一个名为 ChatActivity 的类。实际上它显示的是ListView。在 onCreate 中,我设置了类似

的布局
    super.onCreate(savedInstanceState);
    setContentView(R.layout.conversation_window);

conversation_window.xml 看起来像这样

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:divider="@null"
android:padding="16dp"
android:fitsSystemWindows="true">

<ListView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:divider="@null"
    android:id="@+id/thread_listView"
    android:layout_below="@+id/editText"
    android:layout_weight="1" />

<View
    android:id="@+id/innerLine"
    android:layout_width="match_parent"
    android:layout_height="1dp"
    android:layout_marginTop="5dp"
    android:background="#9E9E9E"
    android:layout_weight="0"
    android:layout_marginBottom="12dp"/>

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textSize="12sp"
    android:textStyle="bold"
    android:textColor="#212121"
    android:layout_marginBottom="8dp"
    android:text="(1) 0/158"
    android:id="@+id/character_count_textview"/>

<LinearLayout
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="10dp"
    android:layout_weight="0"
    android:layout_marginBottom="10dp">


    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/compose_editText"
        android:layout_weight="1"
        android:layout_marginRight="5dp"
        android:hint="এখানে লিখুন..."
        android:inputType="textMultiLine|textCapSentences"
        android:scrollbars="vertical"
        android:background="@drawable/apptheme_textfield_disabled_holo_light"
        />

    <ImageButton
        android:layout_width="50dp"
        android:layout_height="wrap_content"
        android:id="@+id/send_imageButton"
        android:background="@mipmap/send_black"
        />
</LinearLayout>

对于listView的每一行,还有另一个名为 list_item_chat_message.xml 的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">

<CheckBox
    android:id="@+id/CheckBox_conversation"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginLeft="8dp"
    android:layout_marginTop="20dp"
    android:visibility="gone" />

<LinearLayout
    android:id="@+id/content"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_margin="10dp"
    android:orientation="vertical">

    <LinearLayout
        android:id="@+id/contentWithBackground"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
        android:background="@drawable/in_message_bg"
        android:orientation="vertical">

        <TextView
            android:id="@+id/txtMessage"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:maxWidth="200dp"
            android:textColor="@android:color/black"
            android:textSize="16sp" />

    </LinearLayout>

    <TextView
        android:id="@+id/timeInfo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
        android:padding="3dp"
        android:textColor="@android:color/darker_gray" />

</LinearLayout>

list_item_chat_message.xml 中有一个CheckBox,我想在 ChatActivity 类中使用 setOnCheckedChangeListener 。但是当我写的时候这在 ChatActivity

itemCheckBox = (CheckBox) findViewById(R.id.CheckBox_conversation);

抛出 null对象引用。那我怎么能在这个活动中声明这个CheckBox呢?

0 个答案:

没有答案