Advertisement
Guest User

Untitled

a guest
Nov 25th, 2015
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.86 KB | None | 0 0
  1.  
  2. import android.content.Context;
  3. import android.hardware.Camera;
  4. import android.util.Log;
  5. import android.view.SurfaceHolder;
  6. import android.view.SurfaceView;
  7.  
  8. public class CameraPreview extends SurfaceView implements SurfaceHolder.Callback {
  9. private static final String TAG = "CameraPreview";
  10. private SurfaceHolder mHolder;
  11. private Camera mCamera;
  12.  
  13. public CameraPreview(Context context, Camera camera) {
  14. super(context);
  15. mCamera = camera;
  16. // Install a SurfaceHolder.Callback so we get notified when the
  17. // underlying surface is created and destroyed.
  18. mHolder = getHolder();
  19. mHolder.addCallback(this);
  20. // deprecated setting, but required on Android versions prior to 3.0
  21. mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
  22. }
  23.  
  24. public void surfaceCreated(SurfaceHolder holder) {
  25. }
  26.  
  27. public void surfaceDestroyed(SurfaceHolder holder) {
  28. }
  29.  
  30. public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) {
  31. // If your preview can change or rotate, take care of those events here.
  32. // Make sure to stop the preview before resizing or reformatting it.
  33. if (mHolder.getSurface() == null){
  34. // preview surface does not exist
  35. return;
  36. }
  37. // stop preview before making changes
  38. try {
  39. mCamera.stopPreview();
  40. } catch (Exception e){
  41. // ignore: tried to stop a non-existent preview
  42. }
  43.  
  44. // set preview size and make any resize, rotate or
  45. // reformatting changes here
  46. // start preview with new settings
  47. try {
  48. mCamera.setPreviewDisplay(mHolder);
  49. mCamera.startPreview();
  50. } catch (Exception e){
  51. Log.d(TAG, "Error starting camera preview: " + e.getMessage());
  52. }
  53. }
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement