ตรวจสอบความเข้ากันได้กับการนำทางด้วยท่าทางสัมผัส

สำหรับ Android 10 (API ระดับ 29) ระบบ Android จะรองรับอย่างเต็มรูปแบบ การนำทางโดยใช้ท่าทางสัมผัส มี 2 สิ่งที่นักพัฒนาแอปต้องทำเพื่อให้แน่ใจว่า แอปของพวกเขาทำงานร่วมกับฟีเจอร์นี้ได้

  • ขยายเนื้อหาแอปจากขอบหนึ่งไปอีกขอบหนึ่ง
  • จัดการท่าทางสัมผัสของแอปที่ขัดแย้งกัน

นอกจากนี้ Android 13 (API ระดับ 33) ยังเปิดตัวท่าทางสัมผัสที่คาดคะเนการย้อนกลับสำหรับอุปกรณ์ Android เช่น โทรศัพท์ หน้าจอขนาดใหญ่ และอุปกรณ์แบบพับได้ ซึ่งเป็นส่วนหนึ่งของรุ่นที่เปิดตัวหลายปี นักพัฒนาแอปสามารถทำตามขั้นตอนเพื่อดูแลให้แอปของตนรองรับ ท่าทางสัมผัสการย้อนกลับที่คาดการณ์ได้

แสดงเนื้อหาแอปแบบเต็มหน้าจอ

ใช้ประโยชน์จากพื้นที่หน้าจอเพิ่มเติมที่มีให้ในแบบลอย คุณต้องกำหนดค่าการเปลี่ยนแปลงบางอย่างในแอปด้วย

ดูแสดงเนื้อหาแบบขอบต่อขอบในแอป เพื่อดูรายละเอียด

จัดการท่าทางสัมผัสของแอปที่ขัดแย้งกัน

โมเดลการนำทางด้วยท่าทางสัมผัสอาจขัดแย้งกับท่าทางสัมผัสที่ใช้ก่อนหน้านี้ ที่นักพัฒนาแอปใช้ คุณจึงอาจต้องปรับอินเทอร์เฟซผู้ใช้ของแอป

ขัดแย้งกับท่าทางสัมผัสย้อนกลับ

ท่าทางสัมผัสใหม่ของระบบสำหรับการย้อนกลับคือการปัดเข้าจากขอบด้านซ้ายหรือขวาของหน้าจอ ซึ่งอาจรบกวนองค์ประกอบการนำทางของแอปในบริเวณดังกล่าว เพื่อรักษาฟังก์ชันการทำงานขององค์ประกอบที่ขอบด้านซ้ายและขวา ของหน้าจอ ให้เลือกไม่ใช้ท่าทางสัมผัสการย้อนกลับเฉพาะโดยการระบุให้ ภูมิภาคที่จำเป็นต้องรับการป้อนข้อมูลด้วยการสัมผัส ซึ่งทำได้โดยการส่ง List<Rect> ไปยัง View.setSystemGestureExclusionRects() API ที่เปิดตัวใน Android 10 วิธีการนี้มีให้บริการใน ViewCompat เช่นกัน ตั้งแต่ androidx.core:core:1.1.0-dev01

เช่น

Kotlin

var exclusionRects = listOf(rect1, rect2, rect3)

fun onLayout(
        changedCanvas: Boolean, left: Int, top: Int, right: Int, bottom: Int) {
  // Update rect bounds and the exclusionRects list
  setSystemGestureExclusionRects(exclusionRects)
}

fun onDraw(canvas: Canvas) {
  // Update rect bounds and the exclusionRects list
  setSystemGestureExclusionRects(exclusionRects)
}

Java

List<Rect> exclusionRects;

public void onLayout(
        boolean changedCanvas, int left, int top, int right, int bottom) {
    // Update rect bounds and the exclusionRects list
    setSystemGestureExclusionRects(exclusionRects);
}

public void onDraw(Canvas canvas) {
    // Update rect bounds and the exclusionRects list
    setSystemGestureExclusionRects(exclusionRects);
}

ขัดแย้งกับท่าทางควบคุมสำหรับโฮมหรือสลับอย่างรวดเร็ว

ท่าทางสัมผัสของระบบใหม่สำหรับหน้าแรกและการสลับอย่างรวดเร็วจะเกี่ยวข้องกับการปัดที่ด้านล่างของหน้าจอในพื้นที่ที่เคยมีแถบนําทาง แอป เลือกไม่ใช้ท่าทางสัมผัสเหล่านี้ไม่ได้ เนื่องจากท่าทางสัมผัสดังกล่าวจะเป็นการย้อนกลับ

Android 10 จึงเปิดตัว API นี้เพื่อบรรเทาปัญหาดังกล่าว ซึ่งจะแจ้งแอปเกี่ยวกับเกณฑ์การจดจำการสัมผัส

เกมและแอปอื่นๆ ที่ไม่ใช่มุมมอง

เกมและแอปอื่นๆ ที่ไม่มีลำดับชั้นการดูมักกำหนดให้ผู้ใช้ต้อง ปัดใกล้พื้นที่ท่าทางสัมผัสของระบบ ในกรณีเหล่านั้น เกมสามารถใช้ Window.setSystemGestureExclusionRects() เพื่อยกเว้นพื้นที่ที่ซ้อนทับกับพื้นที่ที่สงวนไว้สำหรับท่าทางสัมผัสของระบบ เกม คุณต้องยกเว้นพื้นที่เหล่านี้เฉพาะเมื่อจําเป็น เช่น ได้อย่างมีประสิทธิภาพ

หากเกมกำหนดให้ผู้ใช้ปัดใกล้กับบริเวณท่าทางสัมผัสของหน้าแรก แอปจะขอจัดวางในโหมดสมจริงได้ การดำเนินการนี้จะปิดท่าทางสัมผัสของระบบ ขณะที่ผู้ใช้กำลังโต้ตอบกับเกม แต่ให้ผู้ใช้เปิดใช้อีกครั้ง ท่าทางสัมผัสของระบบโดยการเลื่อนจากด้านล่างของหน้าจอ

อัปเดตแอปเพื่อรองรับท่าทางสัมผัสการย้อนกลับแบบคาดการณ์

Android 13 (API ระดับ 33) เปิดตัวท่าทางสัมผัสย้อนกลับแบบคาดการณ์สำหรับ Android อุปกรณ์อย่างเช่นโทรศัพท์ หน้าจอขนาดใหญ่ และอุปกรณ์พับได้ การย้อนกลับที่คาดการณ์ได้ ท่าทางสัมผัสเป็นส่วนหนึ่งของรุ่นแบบหลายปี เมื่อใช้งานฟีเจอร์นี้อย่างสมบูรณ์ ช่วยให้ผู้ใช้ดูตัวอย่างจุดหมายหรือผลลัพธ์อื่นๆ ของท่าทางสัมผัสการย้อนกลับได้ก่อน ที่สามารถดำเนินการนี้ได้อย่างเต็มรูปแบบ เพื่อให้พวกเขาตัดสินใจได้ว่าจะดำเนินการต่อหรืออยู่ใน มุมมองปัจจุบัน

ดูรายละเอียดได้ที่หัวข้อเพิ่มการรองรับท่าทางสัมผัสเพื่อย้อนกลับแบบคาดการณ์

แหล่งข้อมูลเพิ่มเติม

ดูข้อมูลเพิ่มเติมเกี่ยวกับการนำทางด้วยท่าทางสัมผัสได้จากรายการต่อไปนี้

บล็อกโพสต์

วิดีโอ