From 9f5238023b92dcad483c7139f63eb3c0b064a304 Mon Sep 17 00:00:00 2001 From: Christophe BOUCAUT Date: Tue, 25 Nov 2014 16:00:23 +0100 Subject: [PATCH] =?UTF-8?q?Modification=20permettant=20de=20g=C3=A9rer=20m?= =?UTF-8?q?ieux=20les=20diff=C3=A9rents=20=C3=A9tats=20de=20l'applications?= =?UTF-8?q?=20(pause,=20start,=20restart,=20etc).=20Ajout=20de=20message?= =?UTF-8?q?=20de=20log=20plus=20fin.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../geneanet/customcamera/CameraActivity.java | 73 +++++++++---------- .../geneanet/customcamera/CameraPreview.java | 13 ++-- .../geneanet/customcamera/ManagerCamera.java | 9 +-- 3 files changed, 47 insertions(+), 48 deletions(-) diff --git a/src/android/customCamera/src/org/geneanet/customcamera/CameraActivity.java b/src/android/customCamera/src/org/geneanet/customcamera/CameraActivity.java index bd31034..7d47843 100644 --- a/src/android/customCamera/src/org/geneanet/customcamera/CameraActivity.java +++ b/src/android/customCamera/src/org/geneanet/customcamera/CameraActivity.java @@ -63,6 +63,32 @@ public class CameraActivity extends Activity { String imgBackgroundBase64 = currentBundle.getString("imgBackgroundBase64"); } + // The opacity bar + SeekBar switchOpacity = (SeekBar) findViewById(R.id.switchOpacity); + + // Event on change opacity. + switchOpacity.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { + int progress = 0; + + @Override + public void onProgressChanged(SeekBar seekBar, int progresValue, boolean fromUser) { + progress = progresValue; + ImageView imageView = (ImageView) findViewById(R.id.normal); + float newOpacity = (float) (0.2+progress*0.1); + imageView.setAlpha(newOpacity); + } + + @Override + public void onStartTrackingTouch(SeekBar seekBar) {} + + @Override + public void onStopTrackingTouch(SeekBar seekBar) {} + }); + } + + @Override + protected void onStart() { + super.onStart(); // Get informations about the default display for the device Display defaultDisplay = getWindowManager().getDefaultDisplay(); @@ -101,30 +127,18 @@ public class CameraActivity extends Activity { CameraPreview mPreview = new CameraPreview(this, mCamera); FrameLayout preview = (FrameLayout) findViewById(R.id.camera_preview); preview.addView(mPreview); - - // The opacity bar - SeekBar switchOpacity = (SeekBar) findViewById(R.id.switchOpacity); - - // Event on change opacity. - switchOpacity.setOnSeekBarChangeListener(new OnSeekBarChangeListener() { - int progress = 0; + } - @Override - public void onProgressChanged(SeekBar seekBar, int progresValue, boolean fromUser) { - progress = progresValue; - ImageView imageView = (ImageView) findViewById(R.id.normal); - float newOpacity = (float) (0.2+progress*0.1); - imageView.setAlpha(newOpacity); - } + /** + * Method to pause the activity. + */ + protected void onPause() { + super.onPause(); + ManagerCamera.clearCameraAccess(); + FrameLayout preview = (FrameLayout) findViewById(R.id.camera_preview); + preview.removeAllViews(); + } - @Override - public void onStartTrackingTouch(SeekBar seekBar) {} - - @Override - public void onStopTrackingTouch(SeekBar seekBar) {} - }); - } - // Event on touch screen to call the manager of the zoom & the auto focus. @Override public boolean onTouchEvent(MotionEvent event) { @@ -248,21 +262,6 @@ public class CameraActivity extends Activity { }); } } - - /** - * Method to destroy the view (here, the activity). - */ - protected void onDestroy() { - super.onDestroy(); - ManagerCamera.clearCameraAccess(); - } - - /** - * Method to apply the new view after rotation. - */ - protected void onResume(){ - super.onResume(); - } /** * Method to get the device default orientation. diff --git a/src/android/customCamera/src/org/geneanet/customcamera/CameraPreview.java b/src/android/customCamera/src/org/geneanet/customcamera/CameraPreview.java index e9c73d0..7031f08 100644 --- a/src/android/customCamera/src/org/geneanet/customcamera/CameraPreview.java +++ b/src/android/customCamera/src/org/geneanet/customcamera/CameraPreview.java @@ -22,6 +22,7 @@ public class CameraPreview extends SurfaceView implements SurfaceHolder.Callback */ public CameraPreview(Context context, Camera camera) { super(context); + // assign camera mCamera = camera; mHolder = getHolder(); @@ -31,7 +32,7 @@ public class CameraPreview extends SurfaceView implements SurfaceHolder.Callback /** * When the view is created. - * @param SurfaceHolder holder + * @override. */ public void surfaceCreated(SurfaceHolder holder) { try { @@ -41,9 +42,7 @@ public class CameraPreview extends SurfaceView implements SurfaceHolder.Callback // Start link between the view and the camera. mCamera.startPreview(); } catch (IOException e) { - mCamera.release(); - mCamera = null; - Log.e("customCamera", "Error setting camera preview: " + e.getMessage()); + Log.e("customCamera", "Error setting camera preview to create surface: " + e.getMessage()); } } @@ -61,14 +60,16 @@ public class CameraPreview extends SurfaceView implements SurfaceHolder.Callback // stop current instance. mCamera.setPreviewCallback(null); mCamera.stopPreview(); - } catch (Exception e) {} + } catch (Exception e) { + Log.e("customCamera", "Error setting camera preview at null: " + e.getMessage()); + } try { // Start new link between the view and the camera. mCamera.setPreviewDisplay(mHolder); mCamera.startPreview(); } catch (Exception e) { - Log.d("error", "Error starting camera preview: " + e.getMessage()); + Log.e("error", "Error starting camera preview with mHolder: " + e.getMessage()); } } diff --git a/src/android/customCamera/src/org/geneanet/customcamera/ManagerCamera.java b/src/android/customCamera/src/org/geneanet/customcamera/ManagerCamera.java index a94143b..db89062 100644 --- a/src/android/customCamera/src/org/geneanet/customcamera/ManagerCamera.java +++ b/src/android/customCamera/src/org/geneanet/customcamera/ManagerCamera.java @@ -19,19 +19,18 @@ public class ManagerCamera { * A safe way to get an instance of the Camera object. * @return Camera | null */ - public static Camera getCameraInstance(){ + public static Camera getCameraInstance() { // If camera is already instanced and available, return this resource. if (ManagerCamera.mCamera != null) { - return mCamera; + return ManagerCamera.mCamera; } // Start back camera. Camera c = null; try { c = Camera.open(0); - } - catch (RuntimeException e) { - Log.d("customCamera", "Can't open the camera."); + } catch (RuntimeException e) { + Log.e("customCamera", "Can't open the camera back."); } ManagerCamera.mCamera = c;