6

何らかの理由で、アイテムのリストをスクロールするたびに、リストビュー内の背景が消えて再表示され、実際には望ましくない「ちらつき」効果が発生します。私は次の提案を試しました: How to make a ListView transparent in Android? しかし、何らかの理由で機能しません。助言がありますか?

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/screenLayout"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/background"
    >
        <TextView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:background="@color/title_background"
            android:text="@string/whatsnew_title"
            >
        </TextView>
        <ListView
            android:id="@android:id/list"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            >
        </ListView>     
</LinearLayout>
4

3 に答える 3

21

含めましたandroid:cacheColorHint="#00000000"か?これは、提案された修正の最も重要な部分です。私はあなたのコードを試しました(プロジェクト固有のリソースへの参照を使用しているので、明らかに正確な複製ではありません)、そしてそれはうまくいくようです。

Android Developersブログへのこの投稿は、あなたの興味を引くはずです。

于 2009-10-09T02:27:36.660 に答える
2

これは、Java (コード) 側からも実現できます。listView.setCacheColorHint(Color.TRANSPARENT);

于 2012-10-09T20:56:12.897 に答える
1

theme.xmlで。を確認してください<item name="android:windowBackground">@null</item>。あなたがそれを持っているならば-それを取り除いてください。人気のあるリソースの1つが、この行を例として示していると思います(これが私の得た方法です)。

于 2009-10-08T03:38:54.613 に答える