UIImagePickerControllerSourceTypePhotoLibraryのタイプに最適なUIImagePickerがありますが、UIImagePickerControllerSourceTypeCameraを使用すると、編集ボックスが画像の中央から移動できません。そのため、画像の高さが幅よりも高い場合、ユーザーは編集ボックスを画像の上部の正方形に移動できません。
なぜこれが当てはまるのか誰もが知っていますか?これは、ソースがライブラリではなくカメラからのものである場合にのみ発生します。
編集:いくつかのコード!!!
if (actionSheet.tag == 2) {
if (buttonIndex == 0) { // Camera
// Check for camera
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera] == YES) {
// Create image picker controller
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
// Set source to the camera
imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
imagePicker.allowsEditing = YES;
// Delegate is self
imagePicker.delegate = self;
// Show image picker
[self presentViewController:imagePicker
animated:YES
completion:^(void) {
}];
}
}
else if (buttonIndex == 1) { // Photo Library
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary] == YES) {
// Create image picker controller
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
// Set source to the camera
imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
imagePicker.allowsEditing = YES;
// Delegate is self
imagePicker.delegate = self;
// Show image picker
[self presentViewController:imagePicker
animated:YES
completion:^(void) {
}];
}
}
ご覧のとおり、まったく同じように表示していますが、カメラの編集はフォトライブラリの編集とは動作が異なります。