แอปแบบขอบจรดขอบจะใช้ประโยชน์จากทั้งหน้าจอโดยการวาด UI ไว้ใต้แถบระบบ
ทักษะ Android
ดูใน GitHubเพิ่มการรองรับแบบขอบจรดขอบ
android skills add --skill edge-to-edgeสรุปประเด็นสำคัญ
- วาดพื้นหลังและเนื้อหาที่เลื่อนได้ไว้ใต้แถบระบบเพื่อประสบการณ์แบบขอบจรดขอบ
- หลีกเลี่ยงการเพิ่มท่าทางสัมผัสแบบแตะหรือเป้าหมายการลากไว้ใต้ระยะขอบของระบบ เนื่องจากท่าทางสัมผัสเหล่านี้ขัดแย้งกับการนำทางด้วยท่าทางสัมผัสและแบบขอบจรดขอบ
วาดเนื้อหาไว้ด้านหลังแถบระบบ
ฟีเจอร์แบบขอบจรดขอบช่วยให้คุณวาด UI ไว้ใต้แถบระบบเพื่อประสบการณ์ที่สมจริง
แอปสามารถจัดการการซ้อนทับในเนื้อหาได้โดยการตอบสนองต่อ ระยะขอบ ระยะขอบจะอธิบาย จำนวนพื้นที่ว่างที่ต้องเพิ่มให้กับเนื้อหาของแอปเพื่อหลีกเลี่ยงการซ้อนทับกับ แถบระบบหรือฟีเจอร์ของอุปกรณ์จริง เช่น คัตเอาท์ดิสเพลย์ อ่าน เกี่ยวกับวิธีรองรับแบบขอบจรดขอบและจัดการระยะขอบใน Compose และ Views
โปรดทราบระยะขอบประเภทต่อไปนี้เมื่อออกแบบกรณีการใช้งานแบบขอบจรดขอบ
- ระยะขอบของแถบระบบใช้กับ UI ที่ทั้งแตะได้และไม่ควรถูกแถบระบบบดบัง
- ระยะขอบของท่าทางสัมผัสของระบบใช้กับพื้นที่นำทางด้วยท่าทางสัมผัสที่ระบบปฏิบัติการใช้ซึ่งมีความสำคัญมากกว่าแอปของคุณ
- ระยะขอบของหน้าจอรอยบากใช้กับพื้นที่ของอุปกรณ์ที่ยื่นเข้าไปในพื้นผิวของจอแสดงผล เช่น คัตเอาท์ของกล้อง
ข้อควรพิจารณาเกี่ยวกับแถบสถานะ
ดูคำแนะนำการออกแบบแถบระบบพื้นฐานได้ที่ แถบระบบของ Android ส่วนต่อไปนี้จะกล่าวถึงข้อควรพิจารณาเพิ่มเติมเกี่ยวกับแถบสถานะ
เนื้อหาที่เลื่อนได้
แถบแอปด้านบนควรยุบขณะเลื่อน ดูวิธียุบ Material 3 TopAppBar ใน Material 3 แถบแอปด้านบนขนาดเล็กสามารถยุบให้มีความสูงเท่ากับแถบสถานะหรือเลื่อนออกนอกหน้าจอได้ แถบแอปด้านบนขนาดกลางและขนาดใหญ่สามารถยุบให้เป็นแถบแอปขนาดเล็กลงได้ ดูคำแนะนำของ Material
ควรทำ
ควรทำ
แถบสถานะควรโปร่งแสงเมื่อ UI เลื่อนอยู่ด้านล่าง เพื่อไม่ให้ไอคอนในแถบสถานะดูรก หากต้องการทำเช่นนี้ ให้สร้าง UI ที่เลื่อนได้แบบขอบจรดขอบก่อนโดยทำตามขั้นตอนในเอกสารประกอบของ LazyColumn หรือ RecyclerView จากนั้นตรวจสอบว่าแถบระบบโปร่งแสงโดยทำอย่างใดอย่างหนึ่งต่อไปนี้
- ใช้การปกป้องอัตโนมัติของ Material 3 TopAppBar เมื่อ เลื่อน, หากมี
- สร้าง Composables การไล่ระดับสีที่กำหนดเองหรือใช้ GradientProtection สำหรับ Views ดูข้อมูลเพิ่มเติมเกี่ยวกับการดำเนินการนี้ใน Compose ได้ที่ การปกป้องแถบระบบ
สำหรับเลย์เอาต์แบบปรับอัตโนมัติ ให้ตรวจสอบว่ามีการปกป้องแยกต่างหากสำหรับบานหน้าต่างที่มีสีพื้นหลังต่างกัน
ไม่ควรทำ
ควรทำ
ในทำนองเดียวกัน ลิ้นชักการนำทางก็ควรมีการปกป้องแยกต่างหากจากส่วนอื่นๆ ของแอปด้วย
อย่าซ้อนการปกป้องแถบสถานะ เช่น ใช้ทั้งการปกป้องในตัวของ Material 3 TopAppBar และการปกป้องที่กำหนดเอง
ข้อควรพิจารณาเกี่ยวกับแถบนำทาง
ดูคำแนะนำการออกแบบแถบนำทางพื้นฐานได้ที่ แถบระบบของ Android ส่วนต่อไปนี้มีข้อควรพิจารณาเพิ่มเติมเกี่ยวกับแถบนำทาง
เนื้อหาที่เลื่อนได้
แถบแอปด้านล่างควรยุบขณะเลื่อน
ควรทำ
ควรทำ
คัตเอาท์ดิสเพลย์
คัตเอาท์ดิสเพลย์อาจส่งผลต่อลักษณะที่ปรากฏของ UI แอปต้องจัดการระยะขอบของหน้าจอรอยบากเพื่อไม่ให้ส่วนสำคัญของ UI วาดอยู่ใต้หน้าจอรอยบาก
ควรทำ
ไม่ควรทำ
อย่างไรก็ตาม พื้นหลังของแถบแอปแบบทึบควรวาดเข้าไปในหน้าจอรอยบากดังที่แสดงในรูปภาพต่อไปนี้
ตรวจสอบว่าภาพสไลด์แนวนอนวาดเข้าไปในหน้าจอรอยบาก
อ่านเกี่ยวกับวิธีรองรับคัตเอาท์ดิสเพลย์ใน Compose และ Views
คำแนะนำอื่นๆ
โดยทั่วไป พื้นหลังและเส้นแบ่งควรวาดแบบขอบจรดขอบด้วย ขณะที่เนื้อหา เช่น ข้อความและปุ่มควรมีการเพิ่มระยะขอบเพื่อหลีกเลี่ยง UI ของระบบและองค์ประกอบฮาร์ดแวร์