1

データベースから dailogfragment を介してアイテムを削除し、 database を介してリストビューを削除しています。データベース、リストビューからアイテムを削除でき、削除されたアイテムをリストビューから削除してリストを更新できます。

しかし、問題は、アイテムを削除した直後に、ある種の黒いバー (削除されたアイテムの背後の背景) が表示されることです: http://i733.photobucket.com/albums/ww331/suntuu/Capture-1.png

画像では、デフォルトの背景が白 (theme.holo.light) であることがわかりますが、この黒の背景を削除すると、最後に飛び出します。

リストビュー フラグメントを再度実行すると、消えてしまいます。

私はこれで非常に長い間立ち往生しています。

ここに私のxmlレイアウトファイルがあります:

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:cacheColorHint="#00000000"
    android:orientation="vertical" >

    <ListView
        android:id="@+id/list1"
        android:cacheColorHint="#00000000"
        style="@style/AndroDev"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:dividerHeight="2dp"
        android:paddingBottom="1dp"
        android:paddingTop="1dp" />

</LinearLayout>

ここに私のスタイル/アンドロデフがあります:

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

    <style name="AndroDev" parent="@android:style/Theme.Holo.Light">
        <item name="android:background">#F7F7F7</item>

    </style>

</resources>

アップデート:

リストビューからスタイルを削除した後、この問題はなくなったようですが、カスタムにしたいリスト項目の背景にデフォルトの背景を使用することに固執しています。

どうすればそれを達成できますか。

4

3 に答える 3

0

だから私はそれを解決しました。問題は、リストビュー項目のカスタム背景を取得するために独自のスタイルを使用することにありましたが、これは正しくありませんでした。

だから私はこれを使用してリストビュー行のカスタム背景を実装しました: カスタムセレクターによるリストビューアイテムの背景

于 2012-07-31T05:07:14.990 に答える
0

私も同じ問題に直面しました。アクティビティのリストビューインスタンスの行の下に追加して解決しました

    listView = (ListView)findViewById(R.id.listViewMain);
      listView.setCacheColorHint(Color.TRANSPARENT); // add this line in your code
于 2012-07-19T18:32:24.637 に答える
0

これを試して:

ListView を含むメインの XML で、

次のプロパティを XML の ListView に追加するだけです:-

    android:cacheColorHint="#00000000"
于 2012-07-19T18:29:00.833 に答える