स्वाइप-टू-रीफ़्रेश यूज़र इंटरफ़ेस पैटर्न पूरी तरह से
SwipeRefreshLayout
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
यह विजेट, वर्टिकल स्वाइप का पता लगाता है, एक खास प्रोग्रेस बार दिखाता है, और कॉलबैक ट्रिगर करता है
तरीकों का इस्तेमाल करें. विजेट को अपनी लेआउट फ़ाइल में इसके पैरंट के तौर पर जोड़कर, इस व्यवहार को चालू करें
ListView
या
GridView
और
उपयोगकर्ता के स्वाइप करने पर ट्रिगर होने वाला रीफ़्रेश व्यवहार.
इस पेज में, मौजूदा लेआउट में विजेट जोड़ने का तरीका बताया गया है. इसमें यह भी बताया गया है कि रीफ़्रेश कैसे करें कार्रवाई बार ओवरफ़्लो क्षेत्र पर कार्रवाई करें, ताकि जो उपयोगकर्ता स्वाइप जेस्चर का उपयोग नहीं कर सकते वे किसी बाहरी डिवाइस की मदद से मैन्युअल तरीके से अपडेट करने की सुविधा मिलती है.
स्वाइप करेंरीफ़्रेश करने के लिए डिपेंडेंसी जोड़ें
अपने ऐप्लिकेशन में SwipeRefreshLayout
का इस्तेमाल करने के लिए, यहां दी गई डिपेंडेंसी को अपने ऐप्लिकेशन में जोड़ें
build.gradle
फ़ाइल:
ग्रूवी
dependencies { implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.2.0-alpha01" }
Kotlin
dependencies { implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.2.0-alpha01") }
स्वाइप करेंरीफ़्रेश लेआउट विजेट जोड़ें
किसी मौजूदा ऐप्लिकेशन में स्वाइप-टू-रीफ़्रेश विजेट जोड़ने के लिए, SwipeRefreshLayout
को
सिंगल ListView
या GridView
के पैरंट होते हैं.
SwipeRefreshLayout
सिर्फ़ एक ListView
या
GridView
बच्चा.
नीचे दिए गए उदाहरण में, SwipeRefreshLayout
विजेट को
ListView
वाली मौजूदा लेआउट फ़ाइल:
<androidx.swiperefreshlayout.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/swiperefresh" android:layout_width="match_parent" android:layout_height="match_parent"> <ListView android:id="@android:id/list" android:layout_width="match_parent" android:layout_height="match_parent" /> </androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
SwipeRefreshLayout
विजेट का इस्तेमाल
ListFragment
. अगर
लेआउट में "@android:id/list"
आईडी वाला एक ListView
है,
स्वाइप-टू-रीफ़्रेश करें काम की क्षमता अपने आप ही समर्थित है. हालांकि, साफ़ तौर पर यह घोषणा करना कि
ListView
इस तरह से, डिफ़ॉल्ट ListFragment
व्यू स्ट्रक्चर की जगह ले लेता है. अगर आपने
आपको डिफ़ॉल्ट व्यू स्ट्रक्चर का इस्तेमाल करना है, ताकि SwipeRefreshLayout
के हिस्सों को बदला जा सके
और ListFragment
व्यवहार.
कार्रवाई बार में रीफ़्रेश करने के लिए कार्रवाई जोड़ें
अपने ऐप्लिकेशन के कार्रवाई बार में रीफ़्रेश करने की कार्रवाई जोड़ें, ताकि जो उपयोगकर्ता स्वाइप करने के लिए हाथ के जेस्चर नहीं कर सकते वे भी ये काम कर सकें मैन्युअल अपडेट को ट्रिगर करना चाहिए. उदाहरण के लिए, सुलभता से जुड़ी ज़रूरतों वाले उपयोगकर्ता, ऐक्शन बार से जुड़ी कार्रवाइयों को ट्रिगर कर सकते हैं कीबोर्ड और डी-पैड जैसे बाहरी डिवाइसों का इस्तेमाल करके.
एट्रिब्यूट सेट करके, रीफ़्रेश करने की कार्रवाई को बटन के बजाय मेन्यू आइटम के तौर पर जोड़ें
android:showAsAction=never
. अगर इस कार्रवाई को बटन के तौर पर दिखाया जाता है, तो लोगों को ऐसा लग सकता है कि
रीफ़्रेश बटन की कार्रवाई, स्वाइप करने पर की जाने वाली रीफ़्रेश कार्रवाई से अलग होती है. रीफ़्रेश करने की कार्रवाई की जा रही है
यह ऐक्शन बार में कम साफ़ तौर पर दिखता है. इससे उपयोगकर्ता, स्वाइप करने पर मिलने वाले हाथ के जेस्चर (हाव-भाव) की मदद से, मैन्युअल तरीके से अपडेट करते हैं
साथ ही, ऐक्सेस करने लायक विकल्प बनाए रखें, जहां डी-पैड इस्तेमाल करने वाले लोग इसे ढूंढ रहे हैं.
नीचे दिया गया कोड, ओवरफ़्लो क्षेत्र में स्वाइप करने के लिए रीफ़्रेश करने की कार्रवाई को जोड़ने का तरीका बताता है:
<menu xmlns:android="http://schemas.android.com/apk/res/android" > <item android:id="@+id/menu_refresh" android:showAsAction="never" android:title="@string/menu_refresh"/> </menu>