0

ListViewデータベースにデータが存在する場合にのみメッセージを表示したいという空の問題があります....しかし、この行でエラーが発生します

android:id="@*android:id/list"android:id="@*android:id/empty"

エラーは次のとおりです。

 Illegal resource reference: @*android resources are private and not always present

私のコードはこのように.....

<ListView 
        android:id="@*android:id/list" 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:listSelector="@*android:color/transparent" 
        android:drawSelectorOnTop="false" 
        android:cacheColorHint="#00000000" 
        android:divider="@drawable/line" 
        android:dividerHeight="3.0dip" />

    <TextView 
        android:id="@*android:id/empty" 
        android:textColor="#ff777777" 
        android:gravity="center"
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:text="No data" />
</LinearLayout>

これについて私を助けてください...

4

5 に答える 5

1

これでコードを変更します

<ListView 
    android:id="@android:id/list" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:listSelector="@*android:color/transparent" 
    android:drawSelectorOnTop="false" 
    android:cacheColorHint="#00000000" 
    android:divider="@drawable/line" 
    android:dividerHeight="3.0dip" />

<TextView 
    android:id="@android:id/empty" 
    android:textColor="#ff777777" 
    android:gravity="center"
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:text="No data" />

空の配列リストのメッセージについては、配列リストに以下のコードも使用してください

if(arrayList.isEmpty())
    {
        // do your message code here
    }
于 2013-10-01T06:13:43.673 に答える
0

以下のコードを使用します。

<LinearLayout>
      <ListView 
            android:id="@+id/list" 
            android:layout_width="fill_parent" 
            android:layout_height="fill_parent" 
            android:listSelector="@*android:color/transparent" 
            android:drawSelectorOnTop="false" 
            android:cacheColorHint="#00000000" 
            android:divider="@drawable/line" 
            android:dividerHeight="3.0dip" />

        <TextView 
            android:id="@+id/empty" 
            android:textColor="#ff777777" 
            android:gravity="center"
            android:layout_width="fill_parent" 
            android:layout_height="fill_parent" 
            android:text="No data" />
    </LinearLayout>
于 2013-10-01T06:11:08.737 に答える
0

どこにいても

@*android

に変更します

@android
于 2013-10-01T06:09:14.330 に答える
0

アスタリスク (*) の前の ID を削除します。

これが更新されたレイアウトです

<ListView 
        android:id="@android:id/list" 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:listSelector="@android:color/transparent" 
        android:drawSelectorOnTop="false" 
        android:cacheColorHint="#00000000" 
        android:divider="@drawable/line" 
        android:dividerHeight="3.0dip" />

    <TextView 
        android:id="@android:id/empty" 
        android:textColor="#ff777777" 
        android:gravity="center"
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:text="No data" />
</LinearLayout>
于 2013-10-01T06:06:04.090 に答える
0

レイアウト コードから「*」を削除し、以下のコードを試してください。

<ListView 
        android:id="@android:id/list" 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:listSelector="@*android:color/transparent" 
        android:drawSelectorOnTop="false" 
        android:cacheColorHint="#00000000" 
        android:divider="@drawable/line" 
        android:dividerHeight="3.0dip" />

    <TextView 
        android:id="@android:id/empty" 
        android:textColor="#ff777777" 
        android:gravity="center"
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:text="No data" />
</LinearLayout>
于 2013-10-01T06:24:48.640 に答える