2013-06-04 21 views
19

Tôi đã nghiên cứu Android đặc biệt là Xem hệ thống. Tôi có một câu hỏi khác biệt giữa chúng nhưng không có tài liệu hoặc tài liệu tham khảo bằng ngôn ngữ mẹ đẻ của tôi. Vì vậy, tôi muốn biết từ các bạn.Sự khác nhau giữa Surfaceview và TextureView là gì?

+1

chưa @ChintanRathod liên kết hữu ích để anh trai tài liệu you.Nice 1 –

Trả lời

11

TextureView

Một TextureView có thể được sử dụng để hiển thị một luồng nội dung. Chẳng hạn, luồng nội dung như vậy có thể là video hoặc cảnh OpenGL.

Ví dụ:
https://github.com/dalinaum/TextureViewDemo

Document:
http://developer.android.com/reference/android/view/TextureView.html

SurfaceView

Cung cấp một bề mặt vẽ chuyên dụng nhúng bên trong phân cấp hình ảnh.

Ví dụ:
http://www.mindfiresolutions.com/Using-Surface-View-for-Android-1659.php
http://blog.wisecells.com/2012/06/04/surface-view-android/

Document:
http://developer.android.com/reference/android/view/SurfaceView.html

+3

Cám ơn chia sẻ https://github.com/dalinaum/TextureViewDemo :) – Dalinaum

4

SurfaceViewTextureView cả hai đều thừa hưởng từ lớp android.view.View. Tuy nhiên có một số khác biệt về cấu trúc giữa chúng.

Khi bạn muốn kiểm soát nhiều hơn trên bàn vẽ duy nhất, đi cho SurfaceView

  • Bạn không có thể che phủ hai SurfaceView.

TextureView có những ưu điểm sau trên SurfaceView:

  • Bạn có thể Animate, Transform và Quy mô một TextureView.
+3

Bạn chắc chắn có thể ngăn xếp hai SurfaceViews nếu bạn sử dụng một FrameLayout và setZOrderMediaOverlay đúng trên các giao diện bề mặt – Clocker