如何直接从iPhone / Ipad捕获的相机图像上传或添加图像到UIImageView。
我已经从照片库向UIImageView上传了一张图片。
现在,我希望在通过相机将图像拍摄到ImageView后直接上传图像。
请建议我如何实施。
使用IOS 8.0
答案 0 :(得分:1)
这可以通过Xamarin.Mobile组件轻松完成,该组件是免费的,适用于所有平台。
http://components.xamarin.com/view/xamarin.mobile
从他们给出的例子中可以看出:
using Xamarin.Media;
// ...
var picker = new MediaPicker ();
if (!picker.IsCameraAvailable)
Console.WriteLine ("No camera!");
else {
try {
MediaFile file = await picker.TakePhotoAsync (new StoreCameraMediaOptions {
Name = "test.jpg",
Directory = "MediaPickerSample"
});
Console.WriteLine (file.Path);
} catch (OperationCanceledException) {
Console.WriteLine ("Canceled");
}
}
拍摄照片后,会将其保存到您指定的目录中,并使用您指定的名称。要使用上面的示例轻松检索此图片并使用ImageView进行显示,您可以执行以下操作:
//file is declared above as type MediaFile
UIImage image = new UIImage(file.Path);
//Fill in with whatever your ImageView is
yourImageView.Image = image;
编辑:
请注意,上述内容需要异步。因此,如果您想通过按钮调用启动摄像头,您只需稍微修改.TouchUpInside
事件:
exampleButton.TouchUpInside += async (object sender, EventArgs e) => {
//Code from above goes in here, make sure you have async after the +=
};
否则你可以在函数中包装上面的代码并将async添加到:
public async void CaptureImage()
{
//Code from above goes here
}
答案 1 :(得分:0)
您需要使用AVFoundation来执行此操作。查看Xcode中的AVCam示例项目:
https://developer.apple.com/library/ios/samplecode/AVCam/Introduction/Intro.html