我有一個ListView的問題,只有當我向下滾動才能看到我的列表項。當滾動列表視圖列表項不可點擊
這裏是我的主XML文件:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:id="@+id/AddAlarm"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:clickable="true"
android:layout_margin="10dp" >
<ImageView
android:src="@drawable/add"
android:gravity="right"
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_marginRight="0dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="20dp"
android:gravity="left"
android:textSize="25dp"
android:text="@string/add_alarm" />
</LinearLayout>
<ListView
android:id="@+id/ListaAlarmas"
android:scrollbars="vertical"
android:focusable="false" android:clickable="false"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</LinearLayout>
這是我在上面的ListView加載行項目的xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<ToggleButton
android:id="@+id/CheckBox"
android:textOn=""
android:textOff=""
android:focusableInTouchMode="false"
android:focusable="false"
android:layout_gravity="center"
android:background="@drawable/clock_off"
android:layout_margin="10dp"
android:layout_height="45dp"
android:layout_width="45dp" />
<View
android:id="@+id/firstDivider"
android:layout_height="fill_parent"
android:focusableInTouchMode="false"
android:focusable="false"
android:layout_width="2dp"
android:background="#999999" />
<LinearLayout
android:orientation="vertical"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_gravity="center_vertical"
android:focusableInTouchMode="false"
android:focusable="false"
android:layout_weight="3"
android:layout_marginLeft="30dp" >
<TextView
android:id="@+id/TextoHora"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="25dp"/>
<TextView
android:id="@+id/TextoRepetir"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
第一的LinearLayout是可點擊(AddAlarm)它只是將另一個項目添加到ListView。 ListView中的每個項目都由一個ToggleButton和2個TextViews組成。起初切換按鈕無法點擊,但我解決了通過添加:
android:focusableInTouchMode="false"
android:focusable="false"
所以,一切正常,直到有列表這麼多項目,我需要向下滾動查看它們。事實上,它可以正常工作,直到我實際向下滾動。 即使在ListView中有更多項目時它也能正常工作,但我不向下滾動以查看它們。
問題是當滾動時,ListView上的項目不再可點擊。它不會使用setOnItemClickListener方法,甚至不會獲得焦點(橙色背景)。
任何人都可以弄清楚是什麼問題?
mahe madhi,謝謝你的回答。只是一個問題,是不是你的例子,就像我在xml文件中設置trueable和false可點擊和焦點?我試過了,但沒有奏效。 我認爲這不是notifyDataSetChanged的問題,因爲它工作正常,直到我移動滾動。不管怎樣,非常感謝。 – sheldoncooper