ตั้งค่าแบบไร้ขอบ

หากต้องการอนุญาตให้แอปควบคุมตำแหน่งที่จะวาดเนื้อหาได้อย่างเต็มที่ ให้ทำตามขั้นตอนการตั้งค่าต่อไปนี้ หากไม่มีขั้นตอนเหล่านี้ แอปอาจวาดสีดำหรือสีทึบไว้ด้านหลัง UI ของระบบ หรือไม่เคลื่อนไหวพร้อมกับแป้นพิมพ์ซอฟต์แวร์

  1. กำหนดเป้าหมายเป็น Android 15 (API ระดับ 35) ขึ้นไปเพื่อบังคับใช้การแสดงผลแบบขอบจรดขอบ ใน Android 15 ขึ้นไป แอปของคุณแสดงอยู่ด้านหลัง UI ของระบบ คุณ ปรับ UI ของแอปได้โดยการจัดการ Inset
  2. หรือจะเรียกใช้ enableEdgeToEdge() ใน Activity.onCreate() ก็ได้ ซึ่งจะช่วยให้แอปของคุณแสดงแบบไร้ขอบใน Android เวอร์ชันก่อนหน้า
  3. ตั้งค่า android:windowSoftInputMode="adjustResize" ในรายการAndroidManifest.xmlกิจกรรม การตั้งค่านี้ช่วยให้แอปได้รับขนาดของ IME ซอฟต์แวร์เป็นระยะขอบ ซึ่งจะช่วยให้คุณใช้เลย์เอาต์และการจัดระยะที่เหมาะสมได้เมื่อ IME ปรากฏและหายไปในแอป

    <!-- In your AndroidManifest.xml file: -->
    <activity
      android:name=".ui.MainActivity"
      android:label="@string/app_name"
      android:windowSoftInputMode="adjustResize"
      android:theme="@style/Theme.MyApplication"
      android:exported="true">
    
  4. จัดการ Inset เพื่อไม่ให้ UI ที่สำคัญซ้อนทับกับแถบระบบหรือ รอยบากบนจอแสดงผล คุณจัดการระยะขอบได้โดยใช้ไม้บรรทัด ตัวปรับระยะเว้น หรือตัวปรับขนาดระยะขอบ คอมโพเนนต์ Material บางรายการจะจัดการ Inset โดยอัตโนมัติหรือมีพารามิเตอร์เพื่อ อำนวยความสะดวกในการจัดการ Inset เช่น พารามิเตอร์ PaddingValues ของ Scaffold เลือกวิธีการจัดการภาพซ้อนภาพ เช่น ใช้ Scaffold Modifier.safeDrawingPadding() หรือ Modifier.fitInside(WindowInsetsRulers.SafeDrawing.current) เนื่องจากแนวทางเหล่านี้ มักใช้แทนกันได้