รูปแบบอินเทอร์เฟซผู้ใช้แบบปัดเพื่อรีเฟรชมีการใช้งานทั้งหมดภายใน
SwipeRefreshLayout
วิดเจ็ตที่จะตรวจจับการปัดในแนวตั้ง แสดงแถบความคืบหน้าที่โดดเด่น และจะเรียกใช้ Callback
ในแอปของคุณ เปิดใช้ลักษณะการทำงานนี้โดยเพิ่มวิดเจ็ตลงในไฟล์เลย์เอาต์ของคุณเป็นระดับบนสุดของ
ListView
หรือ
GridView
และติดตั้งใช้งาน
ลักษณะการรีเฟรชที่ระบบเรียกใช้เมื่อผู้ใช้ปัด
หน้านี้แสดงวิธีเพิ่มวิดเจ็ตในเลย์เอาต์ที่มีอยู่ รวมถึงแสดงวิธีเพิ่มการรีเฟรชด้วย การดำเนินการไปยังพื้นที่ที่ตกขอบของแถบการทำงานเพื่อให้ผู้ใช้ที่ไม่สามารถใช้ท่าทางสัมผัสการปัดสามารถเรียกใช้ อัปเดตด้วยตนเองกับอุปกรณ์ภายนอก
เพิ่มการขึ้นต่อกันของ ScrollLayout
หากต้องการใช้ SwipeRefreshLayout
ในแอปของคุณ ให้เพิ่มทรัพยากร Dependency ต่อไปนี้ใน
ไฟล์ 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
หาก
การออกแบบมี ListView
ที่มีรหัส "@android:id/list"
และ
ฟังก์ชันการปัดเพื่อรีเฟรชมีการสนับสนุนโดยอัตโนมัติ แต่การประกาศอย่างชัดแจ้งว่า
ListView
วิธีนี้มีผลแทนโครงสร้างการแสดงผลListFragment
เริ่มต้น ถ้า
คุณต้องการใช้โครงสร้างมุมมองเริ่มต้น ลบล้างส่วนต่างๆ ของ SwipeRefreshLayout
และลักษณะการทำงาน ListFragment
เพิ่มการดำเนินการรีเฟรชลงในแถบการดำเนินการ
เพิ่มการดำเนินการรีเฟรชลงในแถบการทำงานของแอป เพื่อให้ผู้ใช้ที่ไม่สามารถทำท่าทางสัมผัสด้วยการเลื่อนได้ ทำให้เกิดการอัปเดตด้วยตนเอง เช่น ผู้ใช้ที่ต้องการการช่วยเหลือพิเศษจะทริกเกอร์การดำเนินการบนแถบการดำเนินการได้ โดยใช้อุปกรณ์ภายนอก เช่น แป้นพิมพ์และ D-pad
เพิ่มการดำเนินการรีเฟรชเป็นรายการในเมนู แทนที่จะเป็นปุ่ม โดยการตั้งค่าแอตทริบิวต์
android:showAsAction=never
หากคุณแสดงการดำเนินการเป็นปุ่ม ผู้ใช้อาจคิดว่า
การทำงานของปุ่มรีเฟรชจะแตกต่างจากการปัดเพื่อรีเฟรช กำลังดำเนินการรีเฟรช
ที่ไม่ชัดเจนในแถบการทำงานกระตุ้นให้ผู้ใช้ทำการอัปเดตด้วยตนเองโดยใช้ท่าทางสัมผัสการปัด
ขณะที่ยังคงตัวเลือกการเข้าถึงที่ผู้ใช้ D-pad มองหา
โค้ดต่อไปนี้แสดงวิธีการเพิ่มการทำงานแบบปัดเพื่อรีเฟรชลงในพื้นที่ที่ตกขอบ
<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>