Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //my flags:
- static final int FOCUS_NOT_STARTED=1;
- static final int FOCUSING=2;
- static final int FOCUSING_SNAP_ON_FINISH=3;
- static final int FOCUS_SUCCESS=4;
- static final int FOCUS_FAIL=5;
- private int mFocusState=FOCUS_NOT_STARTED;
- private void autoFocus()
- {
- //Confused about the condition:
- if(mFocusState==FOCUS_NOT_STARTED && isPreviewShowing && mCameraStatus!=SNAPSHOT_IN_PROGRESS)
- {
- mFocusState=FOCUSING;
- //mCamera.autoFocus(autoFocusCallback);
- mCamera.autoFocus(new YourAutoFocusCallback());
- }
- }
- private void cancelAutoFocus()
- {
- //Confused about the condition
- if(mCameraStatus==CAMERA_IDLE && (mFocusState==FOCUSING||mFocusState==FOCUS_SUCCESS||mFocusState==FOCUS_FAIL))
- {
- mCamera.cancelAutoFocus();
- }
- mFocusState=FOCUS_NOT_STARTED;
- }
- private void doSnap()
- {
- String mFocusMode=mCamera.getParameters().getFocusMode();
- if(mFocusMode.equals(Parameters.FOCUS_MODE_INFINITY)||mFocusMode.equals(Parameters.FOCUS_MODE_EDOF)||mFocusMode.equals(mFocusMode.equals(Parameters.FOCUS_MODE_FIXED))||mFocusState==FOCUS_SUCCESS||mFocusState==FOCUS_FAIL||mFocusState==FOCUS_NOT_STARTED)
- {
- //take a picture here
- //If the focus was not started,it will go through the focus states if the user holds on to the ShutterButton until the Camera focuses...
- //If it does come to do snap
- mCameraStatus=SNAPSHOT_IN_PROGRESS;
- mCamera.takePicture(null, null, pictureCallback);
- }
- else if(mFocusState==FOCUSING)
- mFocusState=FOCUSING_SNAP_ON_FINISH;
- }
- private void doFocus(boolean pressed)
- {
- //Pressed is set to true,if ShutterButton is half-pressed
- if(pressed)
- autoFocus();
- else
- cancelAutoFocus();
- }
Add Comment
Please, Sign In to add comment