สวัสดีครับ/ค่ะ เพื่อนๆ ของผม/ฉัน
เราจะเริ่มต้นด้วยไลบรารี Paging และ Android Jetpack
ทำไมต้องเป็น Page?
ไลบรารี Paging
ช่วยให้คุณโหลดและแสดงข้อมูลเป็นหน้าๆ จากชุดข้อมูลขนาดใหญ่จากพื้นที่จัดเก็บในเครื่องหรือผ่านเครือข่าย
แนวทางนี้ช่วยให้แอปของคุณสามารถใช้แบนด์วิดท์เครือข่ายและทรัพยากรระบบได้อย่างมีประสิทธิภาพมากขึ้น
แล้วประโยชน์ของปักกิ่งคืออะไร?
ในการแคชหน่วยความจำสำหรับข้อมูลหน้าเว็บของคุณ
นี่ทำให้แน่ใจว่าแอปของคุณใช้ทรัพยากรระบบอย่างมีประสิทธิภาพในขณะที่ทำงานกับข้อมูลหน้าเว็บที่สร้างขึ้นในแอปพลิเคชัน request
deed ทำให้แน่ใจว่าแอปของคุณใช้แบนด์วิดท์เครือข่ายและทรัพยากรระบบอย่างมีประสิทธิภาพ
อะแดปเตอร์มุมมองที่สามารถกำหนดค่าได้หรือรีไซเคิลที่ขอข้อมูลโดยอัตโนมัติเมื่อผู้ใช้เลื่อนไปยังส่วนท้ายของข้อมูลที่โหลดแล้ว
คิดเกี่ยวกับสิ่งนั้น
คุณมีฐานข้อมูลที่มีภาพยนตร์ 1000 เรื่อง และผู้ใช้ต้องการแสดงเพียง 20 เรื่องแรกเท่านั้น
คุณจะไม่ทำการร้องขอที่จะดึงข้อมูลภาพยนตร์ทั้งหมด 1000 เรื่อง
และเพื่อดาวน์โหลดและแสดงผลเฉพาะภาพยนตร์ 20 เรื่องแรกเท่านั้น คุณจำเป็นต้องแสดงผล
เชื่อมต่อ และส่งคำขอไปยังฐานข้อมูลตามข้อมูลที่ถูกขอเท่านั้น ซึ่งก็คือจำนวนภาพยนตร์ดังกล่าว
ดังนั้นเราจะใช้ไลบรารีเพจจิ้งเพื่อดึงข้อมูลนั้น
ฉันได้ขอข้อมูลคำขอเมื่อผู้ใช้เลื่อนไปยังส่วนท้ายของข้อมูลที่โหลดแล้ว
ดังนั้นตามความต้องการของผู้ใช้ เราจะแสดงข้อมูลนั้น
นี่คือประโยชน์ของการใช้ระบบเพจจิ้งที่รองรับการจัดการข้อผิดพลาดในตัว
รวมถึงความสามารถในการรีเฟรชและลองใหม่
ไม่ต้องกังวล เราจะสร้างโปรเจกต์ใหญ่มากที่ใช้ MVP นั้น, การทำหน้าเพจนั้น,
และเราจะแนะนำ Grandal และ Hilde รวมถึงหัวข้อขั้นสูงอื่นๆ
โครงสร้าง
เรามีสามส่วน สามส่วนของหน้า รายการตัวปรับหน้า รายการหน้า และแหล่งข้อมูล
เหล่านี้สำหรับเรียกคืนจากห้องสมุด
มีการอัปเดตครั้งใหญ่ที่เรากำลังจะย้ายไปใช้ ซึ่งก็คือ Paging Library เวอร์ชันสาม
ดังนั้นสิ่งเหล่านี้จะเหมือนกับการปรับเปลี่ยนหรืออัปเดตด้วยชื่ออื่น แต่ยังคงมีแนวคิดเดียวกันว่าเป้าหมายการใช้งานยังคงเป็นแหล่งข้อมูลเดียวกัน
ซึ่งจะถูกเปลี่ยนเป็นแหล่งข้อมูลแบบแบ่งหน้า
และในสไลด์ถัดไป
เราจะดูวิธีการที่เราจะทำการย้ายข้อมูลสำหรับระบบเพจจิ้งรุ่นที่สามในอนาคต
ก่อนอื่น ขอแนะนำสิ่งนั้นก่อน
เรามีโครงสร้างสามอย่างที่เราจะเพิ่มหรือสามคลาสที่เราจะสร้างตัวเชื่อมต่อรายการหน้าที่จะแทนที่คลาสตัวเชื่อมต่อมุมมองรีไซเคิล
โดยจะโหลดข้อมูลรายการหน้าโดยอัตโนมัติและแหล่งข้อมูลซึ่งเป็นอินเทอร์เฟซสำหรับการให้ข้อมูล
ดังนั้นมีข้อสังเกตหนึ่งที่เราควรกล่าวถึงคือความสนใจทั้งหมดของเราจะอยู่ที่แหล่งข้อมูล
และมันสำคัญมาก ๆ ที่ต้องเข้าใจว่าแหล่งข้อมูลถูกแบ่งออกเป็นสามส่วน
ชิ้นส่วนหรือสามประเภท
อินเทอร์เฟซนี้, แหล่งข้อมูล, เราสามารถทำให้เป็นแหล่งข้อมูลหลักของหน้าโดยส่งหมายเลขหน้าเป็นพารามิเตอร์การค้นหาในคำขอ
ซึ่งเป็นกรณีที่เราจะใช้และให้ค่าว่างเป็นคีย์ API ของฐานข้อมูลภาพยนตร์ที่เราได้ใช้ในคอร์ก่อนหน้า,
โครงการก่อนหน้า, และเราจะใช้การแบ่งหน้าด้วยสิ่งนั้น,
MDB API.
ดังนั้นเราจะแสดงตัวอย่างเช่น หาก API
มีเพียงภาพยนตร์เรื่องแรกหรือภาพยนตร์สิบเรื่องแรก หนแต่ละหน้าจะมีภาพยนตร์สิบเรื่อง
ดังนั้นเราจะทำงานตามหน้า และเรามีใน API ประมาณ 50 หน้า
ดังนั้นเราจะใช้แหล่งข้อมูลคีย์หน้าเป็นตัวอย่างของแหล่งข้อมูลโดยใส่คีย์ที่นี่และเท่ากับขึ้นอยู่กับคีย์ของรายการหน้าตามการดึงข้อมูลจากแหล่งข้อมูลนั้นโดยใช้คีย์ที่เป็นของรายการตัวอย่างเช่นดึงข้อมูลภาพยนตร์ตาม
ID
ดังนั้น หากคุณต้องการดึงภาพยนตร์ตาม ID ของมัน
คุณจะต้องใช้แหล่งข้อมูลแบบ item key
แหล่งข้อมูลเชิงตำแหน่ง ซึ่งเป็นประเภทของแหล่งข้อมูลที่สาม
ที่ดึงข้อมูลโดยใช้ตำแหน่งที่ไม่แน่นอน
ไม่
ตามที่ผมได้บอกคุณไปแล้ว เราจะทำงานกับแหล่งข้อมูลคีย์หน้า
และเนื่องจากเราจะพึ่งพาหน้าต่างๆ เพื่อแสดงข้อมูลที่โอนย้ายจากหน้าสองไปยังหน้าสาม
มีบทเรียนเก่าๆ มากมายบนอินเทอร์เน็ตเกี่ยวกับไลบรารี
Paging ดังนั้นเราจึงเป็นแบบนั้น
คนแรกที่จะแนะนำ Paging
Three ซึ่งเปรียบเสมือนการย้ายจากการใช้ระบบเพจไปยังกรุงปักกิ่ง
มีความแตกต่างบางประการ เช่น
ตัวเชื่อมต่อรายการหน้าแบบชำระเงินจะกลายเป็นตัวเชื่อมต่อข้อมูลหน้า ซึ่งแหล่งข้อมูลนั้นจะกลายเป็นแหล่งข้อมูลแบบแบ่งหน้า
เครื่องมือสร้างรายการหน้าสดจะเป็นหน้าหรือหน้านั้น
รายการที่การกำหนดค่าจะทำการแบ่งหน้าคือการกำหนดค่า
และแหล่งข้อมูล ปัจจัยนั้นก็จะเหมือนกัน
โอเค
ดังนั้นนี่คือเกี่ยวกับไลบรารีเพจจิ้ง
และต่อไป เราจะสร้างแอปจริงที่ใช้การแบ่งหน้า