android एंड्रॉइड: सूची पर हाइलाइट अक्षम करना देखें क्लिक करें




android-listview highlighting (12)

मेरे android:focusableInTouchMode="true" जाने का तरीका है। android:listSelector="@android:color/transparent" कोई उपयोग नहीं है। ध्यान दें कि मैं प्रत्येक पंक्ति में कई ऑब्जेक्ट्स के साथ एक कस्टम सूचीदृश्य का उपयोग कर रहा हूं।

मैं नारंगी हाइलाइट को अक्षम करना चाहता हूं जो सूची को स्पर्श करते समय होता है पंक्ति देखें। अब तक मेरे एक्सएमएल में मैंने निम्नलिखित कोशिश की है:

android:focusable="false"
android:focusableInTouchMode="false"
android:clickable="false"

अधिक जानकारी: जब कोई उपयोगकर्ता इस सूची पर स्क्रीन को छूता है तो मैं शून्य अंतर होना चाहता हूं। ऑब्जेक्ट देखें।


कोड में

listView.setSelector(getResources().getDrawable(R.drawable.transparent));

और खींचने योग्य फ़ोल्डर में छोटी पारदर्शी छवि जोड़ें।

पसंद: पारदर्शी.एक्सएमएल

<?xml version="1.0" encoding="utf-8"?>    
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#00000000"/>
</shape>

कुछ भी मुझे मदद नहीं करता है लेकिन यह:

transparent_drawable.xml :

<?xml version="1.0" encoding="utf-8"?>    
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#00000000"/>
</shape>

layout.xml :

android:listSelector="@drawable/transparent_drawable"

विकल्प के रूप में:

listView.setSelector(android.R.color.transparent);

या

listView.setSelector(new StateListDrawable());

आपको केवल जोड़ने की जरूरत है: android:cacheColorHint="@android:color/transparent"


ऐसा करने का तेज़ और आसान तरीका है: विधि में:

private void OnItemSelected(object sender, SelectedItemChangedEventArgs e)
{
    //TODO
    ((ListView)sender).SelectedItem = null;
}

उम्मीद है कि यह मदद करेगा;)


सूचियों के साथ एक्सएमएल में भी इसे जोड़ें .. आशा है कि यह काम करेगा

<ListView
android:cacheColorHint="@android:color/transparent"
android:listSelector="@android:color/transparent"/> 

यदि आप एक सूची दृश्य आइटम के लिए हाइलाइट को अक्षम करना चाहते हैं, लेकिन सेल सक्षम रखें, उस सेल के लिए पृष्ठभूमि रंग को हाइलाइटिंग अक्षम करने के लिए सेट करें।

उदाहरण के लिए, अपने सेल लेआउट में, android:background="@color/white" सेट करें android:background="@color/white"


इसे अपने एक्सएमएल में जोड़ें:

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

और समस्या के लिए यह काम कर सकता है (मुझे यकीन नहीं है और मुझे नहीं पता कि बेहतर समाधान हैं या नहीं):

आप अपने टेक्स्ट व्यू में ColorStateList लागू कर सकते हैं।


RoflcoptrException के जवाब को चाल करना चाहिए, लेकिन किसी कारण से यह मेरे लिए काम नहीं करता है, इसलिए मैं उस समाधान को पोस्ट कर रहा हूं जो मेरे लिए काम करता है, उम्मीद है कि यह किसी की मदद करेगा

<ListView 
android:listSelector="@android:color/transparent" 
android:cacheColorHint="@android:color/transparent"
/>

नारंगी हाइलाइट प्रभाव ListView पर एक styleयह आलेख सूची दृश्य शैली को ओवरराइड करने का एक अच्छा अवलोकन देता है।

अनिवार्य रूप से, आपके पास एक चयनकर्ता है जो वर्तमान स्थिति के आधार पर विभिन्न शैली तत्वों को निर्दिष्ट करता है।

इसे संक्षिप्त और त्वरित समाधान https://.com/a/12242564/185022


आभासी और वास्तविक उपकरणों पर कुछ 'google'ing और परीक्षण के बाद, मुझे लगता है कि मेरे नीचे कोड काम करता है:

ArrayAdapter<String> myList = new ArrayAdapter<String>(this, R.layout.list_item, strText) {
    public boolean isEnabled(int position) 
    { 
            return false; 
    } 
};

ध्यान दें कि मैंने areAllItemsEnabled() भाग को छोड़ दिया है।





highlighting