簡體   English   中英

如何為僅從iOS中的圖片庫中選擇的視頻設置allowEditing for UIImagePickerController?

[英]How to set allowsEditing for UIImagePickerController only for videos selected from photo library in iOS?

我在我的應用程序中使用UIImagePickerController。 我在按鈕操作中顯示以下警報。

在此處輸入圖片說明

我的代碼在alertview委托方法中如下所示:

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
    if ([alertView.title isEqualToString:@"Choose"]) {
        if (buttonIndex == 1) { //Camera
            [self presentImagePickerControllerWithCamera:YES];
        }
        else if(buttonIndex == 2) { //Library
            [self presentImagePickerControllerWithCamera:NO];
        }
    }
}

方法“ presentImagePickerControllerWithCamera”的內容為:

- (void)presentImagePickerControllerWithCamera:(BOOL)isCamera {

    CFStringRef mTypes[2] = { kUTTypeImage, kUTTypeMovie };
    CFArrayRef mTypesArray = CFArrayCreate(CFAllocatorGetDefault(), (const void**)mTypes, 2, &kCFTypeArrayCallBacks);
    imagePickerController.mediaTypes = (__bridge NSArray*)mTypesArray;
    imagePickerController.videoMaximumDuration = 60.0f;

    CFRelease(mTypesArray);
    if (isCamera) { // Showing the camera (Both Camera and video)
        imagePickerController.sourceType = UIImagePickerControllerSourceTypeCamera;
        imagePickerController.videoQuality = UIImagePickerControllerQualityTypeMedium;
        imagePickerController.allowsEditing = NO;
    }
    else {  // Showing library (Both Pictures and videos)
        imagePickerController.allowsEditing = YES;
        imagePickerController.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;
    }

    [self presentViewController:imagePickerController animated:YES completion:nil];
}

在這里,當用戶從庫中選擇視頻時,我需要將視頻限制為1分鍾,所以我寫了

imagePickerController.videoMaximumDuration = 60.0f;

    imagePickerController.allowsEditing = YES;

工作正常。 但是,當用戶從庫中選擇圖片時,我不想編輯(圖片上的方框)。 有什么辦法可以實現?

任何建議,將不勝感激。 提前致謝。

您當前的代碼無法執行此操作。

您已經將兩種媒體類型一起分配了。 這將向您顯示圖像和視頻都進入相冊。 一旦UIImagePickerController將顯示您將無權使用它,我的意思是您不知道在委托被調用之前用戶將選擇什么(圖像或視頻)。

因此,要實現此目的,您必須立即設置每種媒體類型。 並且基於該媒體類型,必須設置allowsEditing屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM