ดูสูญเสียความสามารถในการยอมรับเหตุการณ์สำคัญ

ฉันสับสนเล็กน้อยว่าเหตุการณ์สำคัญ (ปุ่มย้อนกลับ ปุ่มปรับระดับเสียง) เกี่ยวข้องกับ Views ใน Android อย่างไร

ยกตัวอย่างปัญหาที่ฉันมีในปัจจุบัน:

ทำงานได้ดี

  • สร้างเค้าโครง (เช่น เค้าโครงแบบสัมพันธ์)
  • เพิ่มมุมมองลงในเค้าโครง (A GL SurfaceView)
  • เรียกใช้แอปและรอให้ทุกอย่างโหลด (และสำหรับการสร้าง GLSurfaceView)
  • กดปุ่มโฮม
  • เปิดแอปอีกครั้ง
  • กดกลับเพื่อออก

ใช้งานไม่ได้

  • สร้างเค้าโครง (เช่น เค้าโครงแบบสัมพันธ์)
  • เพิ่มมุมมองให้กับเค้าโครง
  • เรียกใช้แอปและกดปุ่มโฮมก่อนที่ GLSurfaceView จะสร้าง/แสดงโดยสมบูรณ์
  • เปิดแอปใหม่อย่างรวดเร็วอีกครั้ง ก่อนที่ GLSurfaceView จะสร้าง/แสดงโดยสมบูรณ์
  • รอให้ SurfaceView ปรากฏขึ้น
  • แม้ว่ากิจกรรมการสัมผัสจะทำงานได้ ปุ่มใช้งานไม่ได้อีกต่อไปและไม่สามารถออกจากแอปได้

ทำไมเป็นเช่นนี้? มีวิธีที่จะดึงความสนใจกลับไปที่มุมมองนี้หรือไม่? (หาก 'โฟกัส' เป็นคำศัพท์ที่ถูกต้องในตัวอย่างนี้)

ฉันพยายามแล้ว

myGLView.requestFocus();

ฉันได้ลองวิธีการอื่น ๆ มากมาย แต่ดูเหมือนว่าจะไม่ทำงาน - ต้องมีวิธีที่ง่ายและรวดเร็วเพื่อให้แน่ใจว่าเหตุการณ์สำคัญทำงานกับ GLSurfaceView ที่มองเห็นได้ในปัจจุบัน


person Zippy    schedule 29.07.2014    source แหล่งที่มา
comment
ไม่สามารถออกจากแอปได้ คุณกำลังบอกว่าปุ่มโฮมหยุดทำงานหลังจากที่คุณออกและกลับไปที่แอปอย่างรวดเร็วใช่หรือไม่ คุณใช้อุปกรณ์และเวอร์ชันของ Android ใด   -  person fadden    schedule 30.07.2014
comment
ไม่ @fadden ปุ่มโฮมยังคงใช้งานได้ แต่ปุ่มย้อนกลับ (และปุ่มปรับระดับเสียง) หยุดทำงาน - เป็น KitKat 4.4.4 บนแท็บเล็ต Google Nexus 10 :-)   -  person Zippy    schedule 30.07.2014