ตั้งค่า Fragment เป็น FullScreen ในขณะที่ใช้ Navigation Component - Android
ฉันเพิ่งแปลงแอปเป็นสถาปัตยกรรมกิจกรรมเดี่ยวและพยายามตั้งค่าส่วนหนึ่งเป็นแบบเต็มหน้าจอ โค้ดเต็มหน้าจอมาตรฐานสำหรับกิจกรรมใช้ไม่ได้กับแฟรกเมนต์
final int flags =
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;
ฉันพบนี้Android ตั้งแบบเต็มหน้าจอจากชิ้นส่วน แต่การตั้งค่าเป็น FLAG_LAYOUT_NO_LIMITS ทำให้ PagerSnapHelper ในแฟรกเมนต์กระโดดไปมาเมื่อสลับระหว่าง FLAG_LAYOUT_NO_LIMITS และเพิกถอน
คำถามของฉันคือมีวิธีอื่นอีกไหมในการตั้งค่าส่วนเป็นแบบเต็มหน้าจอโดยไม่ใช้ FLAG_LAYOUT_NO_LIMITS
คำตอบ
คุณไม่จำเป็นต้องใช้FLAG_LAYOUT_NO_LIMITS
หรือไม่ควรใช้fitsSystemWindows="true"
ทั่วโลกในชั้นกิจกรรมของคุณนั่นคือสิ่งที่จะป้องกันไม่ให้ส่วนของคุณเต็มหน้าจอ ให้เพิ่มเฉพาะfitsSystemWindows
ชิ้นส่วน / ส่วนประกอบแต่ละส่วนที่อาจทับซ้อนกับแถบสถานะ / ระบบ วิธีนี้จะช่วยให้มั่นใจได้ว่าส่วนเต็มหน้าจอของคุณจะสามารถใช้งานได้เต็มขนาดและไม่แทรกจากขอบ