2010-05-17 15 views
7

नए आधिकारिक ट्विटर ऐप में, सभी सूची दृश्यों में स्क्रॉलबार ऐप का उपयोग तब तक छुपाए जाते हैं जब तक उपयोगकर्ता सूची के माध्यम से स्क्रॉल नहीं कर लेता है।एक सूची दृश्य में स्क्रॉल नहीं करते समय ऑटोहोइड स्क्रॉलबार

जब आप स्क्रॉल करना प्रारंभ करते हैं, तो स्क्रॉलबार दिखाई देते हैं। जब आप रुकते हैं, वे पूरी तरह से चले जाने तक एनीमेशन के साथ फीका हो जाते हैं।

मुझे प्रलेखन में कुछ भी नहीं मिल रहा है जो इसे मानक सुविधा के रूप में इंगित करता है।

क्या यह एपीआई में शामिल है? यदि नहीं, तो किसी को पता है कि यह कैसे किया जा सकता है?

उत्तर

4

पुष्टि: या तो उपयोग एंड्रॉयड: fadeScrollbars (आप एपीआई स्तर कर रहे हैं 5 अगर) या स्क्रॉल स्थिति की जांच और छिपाने/बार दिखाने के लिए setOnScrollListener उपयोग करने के लिए प्रयास करें। कुछ कोड उदाहरण इस सूत्र में कर रहे हैं: how to detect Android ListView Scrolling stopped?

1

मैं उन्हें अभी तक उपयोग नहीं किया है, लेकिन आप android:scrollbarDefaultDelayBeforeFade और android:scrollbarFadeDuration, उपलब्ध सभी विजेट पर के साथ चारों ओर निभा सकता है (अर्थात, View के उपवर्ग)।

+0

कि काम हो सकता है, setScrollbarFadingEnabled (बुलियन) एपीआई स्तर 5 के साथ मिलकर करता है, तो - XML ​​विशेषता है एंड्रॉयड: fadeScrollbars –

4

आप styles.xml को यह जोड़कर एपीआई स्तर 5 और नए कस्टम थीम और fadeScrollbars शैली विशेषता के माध्यम से पर अपने पूरे अनुप्रयोग के लिए fading स्क्रॉल पट्टी सक्षम कर सकते हैं:

<style name="Theme.App" parent="android:Theme.Light"> 
    <item name="android:fadeScrollbars">true</item> 
</style> 

फिर AndroidManifest.xml में आपके आवेदन के लिए नए विषय सेट:

<application android:icon="@drawable/app_icon" 
      android:label="@string/app_name" 
      android:description="@string/description" 
      android:theme="@style/Theme.App"> 

बस आप अलग-अलग गतिविधियों के बारे में इस वैश्विक विषय अधिभावी नहीं कर रहे हैं सुनिश्चित करें। इससे पहले एंड्रॉइड संस्करण सुरक्षित रूप से इस अज्ञात एक्सएमएल विशेषता को अनदेखा करेंगे और स्क्रॉलबार को फीका नहीं करेंगे।

0

मैंने एलेक्स के जवाब का पालन किया और यह थीम सेटिंग्स और कोड दोनों के माध्यम से काम किया।

GridView gridview = (GridView) findViewById(R.id.mygridView); 
gridview.setScrollbarFadingEnabled(false); 

मुझे गैलरी घटक के साथ समस्या का सामना करना पड़ा। जबकि निम्नलिखित ठीक संकलित करेंगे, यह एक NullPointerException फेंक देगा। मुझे लगता है कि यह एक गैलरी के साथ करना है जो स्क्रॉलबार को दिखाने/छिपाने के लिए नहीं है।

Gallery gallery = (Gallery) findViewById(R.id.myGallery); 
gallery.setScrollbarFadingEnabled(false); // <-- this will throw an exception 

Android 2.2

संबंधित मुद्दे