Florent CHAMPIGNY
a40649c4e6
|
8 years ago | |
---|---|---|
app | 8 years ago | |
camerafragment | 8 years ago | |
gradle/wrapper | 8 years ago | |
media | 8 years ago | |
.gitignore | 8 years ago | |
LICENSE | 8 years ago | |
LICENSE.md | 8 years ago | |
README.md | 8 years ago | |
build.gradle | 8 years ago | |
gradle.properties | 8 years ago | |
gradlew | 8 years ago | |
gradlew.bat | 8 years ago | |
settings.gradle | 8 years ago |
README.md
CameraFragment
A simple easy-to-integrate Camera Fragment for Android
CameraFragment preview directly the camera view, and provides a easy API to capture or manage the device
You can setup your own layout and control the camera using CameraFragment
//you can configure the fragment by the configuration builder
CameraFragment cameraFragment = CameraFragment.newInstance(new Configuration.Builder().build());
getSupportFragmentManager().beginTransaction()
.replace(R.id.content, cameraFragment, FRAGMENT_TAG)
.commit();
Actions
You can directly take a photo / video with
cameraFragment.takePhotoOrCaptureVideo(callback);
Flash can be enable / disabled ( AUTO
/ OFF
/ ON
) with
cameraFragment.toggleFlashMode();
Camera Type can be modified ( BACK
/ FRONT
) with
cameraFragment.switchCameraType();
Camera action ( PHOTO
/ VIDEO
) can be modified with
cameraFragment.switchActionPhotoVideo();
And you can change the captured photo / video size with
cameraFragment.openSettingDialog();
Listeners
Result
Get back the result of the camera record / photo in the CameraFragmentResultListener
cameraFragment.setResultListener(new CameraFragmentResultListener() {
@Override
public void onVideoRecorded(byte[] bytes, String filePath) {
//called when the video record is finished and saved
startActivityForResult(PreviewActivity.newIntentVideo(MainActivity.this, filePath));
}
@Override
public void onPhotoTaken(byte[] bytes, String filePath) {
//called when the photo is taken and saved
startActivity(PreviewActivity.newIntentPhoto(MainActivity.this, filePath));
}
});
Camera Listener
cameraFragment.setStateListener(new CameraFragmentStateListener() {
//when the current displayed camera is the back
void onCurrentCameraBack();
//when the current displayed camera is the front
void onCurrentCameraFront();
//when the flash is at mode auto
void onFlashAuto();
//when the flash is at on
void onFlashOn();
//when the flash is off
void onFlashOff();
//if the camera is ready to take a photo
void onCameraSetupForPhoto();
//if the camera is ready to take a video
void onCameraSetupForVideo();
//when the camera state is "ready to record a video"
void onRecordStateVideoReadyForRecord();
//when the camera state is "recording a video"
void onRecordStateVideoInProgress();
//when the camera state is "ready to take a photo"
void onRecordStatePhoto();
//after the rotation of the screen / camera
void shouldRotateControls(int degrees);
void onStartVideoRecord(File outputFile);
void onStopVideoRecord();
});
Text
CameraFragment can ping you with the current record duration with CameraFragmentTextListener
Widgets
CameraFragment comes with some default views
RecordButton
, MediaActionSwitchView
, FlashSwitchView
, CameraSwitchView
, CameraSettingsView