ฉันกำลังดิ้นรนเพื่อทำความเข้าใจกระบวนการวาดภาพSurfaceViewและดังนั้นทั้งSurface/ Canvas/ Bitmapระบบซึ่งใช้ใน Android
ฉันได้อ่านบทความและหน้าเอกสาร API ทั้งหมดซึ่งฉันสามารถหาได้ในไซต์สำหรับนักพัฒนาแอนดรอยด์, บทแนะนำเกี่ยวกับกราฟิก Android, ซอร์สโค้ด LunarLander และคำถามนี้
โปรดบอกฉันว่าข้อความใดเป็นจริงข้อใดไม่ใช่และเพราะเหตุใด
CanvasมีของตัวเองBitmapติดอยู่SurfaceมีของตัวเองCanvasติดอยู่- ทั้งหมด
Viewเป็นของส่วนแบ่งหน้าต่างเดียวกันและทำให้แบ่งปันเดียวกันSurfaceCanvas SurfaceViewเป็นคลาสย่อยViewซึ่งแตกต่างจากViewคลาสย่อยอื่น ๆและViewตัวมันเองมีของตัวเองที่Surfaceจะดึงเข้ามา
นอกจากนี้ยังมีคำถามเพิ่มเติมอีกหนึ่งคำถาม:
- เหตุใดจึงจำเป็นต้องมี
SurfaceคลาสหากมีCanvasการดำเนินการระดับสูงกับบิตแมปอยู่แล้ว ยกตัวอย่างสถานการณ์ที่Canvasไม่เหมาะสำหรับการทำงานที่Surfaceสามารถทำได้
