Monotouch - 带iPad应用程序的UIImagePickerController

RSH*_*RSH 6 uiimagepickercontroller xamarin.ios ipad uipopovercontroller

我有一个iPad应用程序,我试图让用户从他们PhotoLibrary,附近选择图像,因为我可以告诉我必须使用UIImagePickerControllerUIPopOverController.我已尝试过许多不同的方法来做到这一点,但我可以得到任何工作.我已经看过很多代码片段,但我似乎无法让它们在Monotouch下工作.

有人能指出我这样做的正确方法吗?我非常感谢.

Luk*_*uke 2

这是我在应用程序中使用的代码 - 这应该作为您使其正常工作的良好开端。

UIImagePickerController imagePicker;
UIPopoverController popOver;

void AttachImageBtnTouched(object sender, EventArgs e)
{
    if (popOver == null || popOver.ContentViewController == null)
    {
        imagePicker = new UIImagePickerController();
        popOver = new UIPopoverController(imagePicker);
        ImagePickerDelegate imgDel = new ImagePickerDelegate();
        imagePicker.Delegate = imgDel;
        imagePicker.SourceType = UIImagePickerControllerSourceType.PhotoLibrary;
    }
    if (popOver.PopoverVisible)
    {
        popOver.Dismiss(true);
        imagePicker.Dispose();
        popOver.Dispose();
        return;
    }
    else
    {
        popOver.PresentFromRect(btnAttachment.Frame, this.View, UIPopoverArrowDirection.Any, true);
    }
}

// The Delegate class looks something like

public class ImagePickerDelegate : UIImagePickerControllerDelegate
{
    public ImagePickerDelegate()
    {}

    public override void FinishedPickingMedia(UIImagePickerController picker, NSDictionary info)
    {
        UIImage image = (UIImage)info.ObjectForKey(new NSString("UIImagePickerControllerOriginalImage"));
        // do whatever else you'd like to with the image
    }
}
Run Code Online (Sandbox Code Playgroud)