android - स्क्रॉल करते समय पृष्ठभूमि सूची दृश्य काला हो जाता है




listview (8)

आप इस तरह उपयोग कर सकते हैं:

list.setCacheColorHint(Color.TRANSPARENT);
list.requestFocus(0);

मैंने एक विशिष्ट सूची बनाई है जो बाईं ओर की छवि वाली प्रत्येक पंक्ति के साथ स्क्रॉल करने योग्य सूची बनाने के लिए निम्न तत्वों में से मौजूद है और दाईं ओर कुछ पाठ है:

"रूट" लेआउट से शुरू करने के लिए:

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"
    android:background="#C8C8C8"
    >
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"/>
    <ListView
        android:id="@android:id/list"
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent"
        android:drawSelectorOnTop="false"
        android:divider="#C8C8C8"
        android:background="#C8C8C8"/>
</LinearLayout>

और फिर ListView के भीतर मैं निम्नलिखित "पंक्ति" आइटम रखता हूं:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:background="@drawable/bg_row"
>
    <ImageView
        android:layout_width="wrap_content"
        android:paddingLeft="10px"
        android:paddingRight="15px"
        android:paddingTop="5px"
        android:paddingBottom="5px"
        android:layout_height="wrap_content"
        android:src="@drawable/bg_image"
    />
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:paddingTop="5px"
        android:paddingBottom="5px"
        android:textSize="16sp"
        android:textColor="#000000"
        android:layout_gravity="center"
        android:maxHeight="50px"/>
</LinearLayout>

जब तक स्क्रीन स्थिर रूप से दिखाया जाता है (जैसा कि कोई आंदोलन नहीं होता है) यह सही ढंग से दिखाया जाएगा, लेकिन जब मैं सूची के माध्यम से पंक्ति-वस्तु की पृष्ठभूमि (कोड में दिखाया जा सकता है "के रूप में स्क्रॉल करना शुरू कर दूंगा) सही ढंग से दिखाया गया है लेकिन "रूट" लेआउट की पृष्ठभूमि पूरी तरह से काला हो जाएगी ... जब स्क्रॉलिंग पृष्ठभूमि बंद कर देगी, तो ज्यादातर बार, इसका रंग वापस ले लें ... जैसा कि मैंने परीक्षण किया है, मैंने उस रूट- एक ही पृष्ठभूमि के साथ तत्व, सूची स्क्रॉल होने पर यह रंग बदल जाएगा ... कोई विचार क्यों यह हो रहा है, और इसे कैसे हल करें?


इस समस्या के लिए हमारे पास बहुत सारे विकल्प हैं, आप प्रोग्रामिंग के माध्यम से पृष्ठभूमि को पारदर्शी के रूप में सेट कर सकते हैं

yourlistview.setCacheColorHint(Color.TRANSPARENT); 

या एक्सएमएल के माध्यम से

android:cacheColorHint="@android:color/transparent"

निम्नलिखित मेरे लिए काम किया:

myListView.setScrollingCacheEnabled(false);

मैं सूची listView में छवियों का उपयोग कर रहा listView और कभी-कभी सैमसंग एस 4 में भी काले रंग की ओर जाता है, यहां तक ​​कि स्क्रॉलिंग भी नहीं। यह एक बेवकूफ गलती थी जिसे मैंने एडाप्टर में किया है। मैंने इस मुद्दे को ठीक करने के लिए अपने विचार को शून्य पर रखा है

 @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            Holder holder;
            convertView = null; // convert view should be null
            if (convertView == null) {
                holder = new Holder();
                convertView = inflater1.inflate(R.layout.listview_draftreport_item, null);
             } 
        }

ListView टैग पर एक विशेषता जोड़ें

android:cacheColorHint="#00000000" // setting transparent color

अधिक जानकारी के लिए इस ब्लॉग की जांच करें


Listview सेट का उपयोग करने के लिए अपने एक्सएमएल में

    android:cacheColorHint="@android:color/transparent"

android:id="@android:id/list"
android:layout_width="fill_parent" 
android:layout_height="fill_parent"
android:drawSelectorOnTop="false"
android:divider="#C8C8C8"
android:background="#C8C8C8"
android:cacheColorHint="#00000000"/>

android:cacheColorHint="@android:color/transparent"




listview