标签: uiimagepickercontroller

Landscape中的UIImagePickerController

我一直在寻找答案,但无法想出任何答案.显然,iPhone SDK 3.0使得UIImagePickerController可以以横向模式显示 - 但我找不到任何允许这样做的方法.我认为如果应用程序默认情况下是横向的,它会自动调整图像控制器,但这对我不起作用.

谢谢你的帮助!

iphone cocoa-touch landscape image uiimagepickercontroller

23
推荐指数
3
解决办法
3万
查看次数

如何判断didFinishPickingMediaWithInfo返回的图像是来自相机还是photoalbum?

我有一个视图控制器,需要能够从相册和相机中选择一张图片.我只能为didFinishPickingMediaWithInfo提供一个委托方法,虽然我可以判断它是否是一个图像,我似乎无法判断它是来自相册还是来自相机(我需要先将它保存在相册中).信息中有什么可以帮我区分这两个吗?

谢谢...

uiimagepickercontroller

23
推荐指数
2
解决办法
5557
查看次数

将照片保存到iPhone相册库中的自定义相册

我正在尝试在iPhone的照片库中创建自定义相册,然后保存我用相机拍摄的照片,或从手机相机胶卷中选择到该自定义相册的照片.我可以成功创建相册,但照片没有保存在那里,而是他们被保存到模拟器保存的照片专辑...我不知道如何告诉UIImageWriteToSavedPhotosAlbum保存到我刚创建的新专辑addAssetsGroupAlbumWithName. ..

这是我到目前为止的代码 - 我已经删除了几个部分以保持我的代码示例简短...

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{     
  NSString *mediaType = [info objectForKey:UIImagePickerControllerMediaType];
  if([mediaType isEqualToString:(__bridge NSString *)kUTTypeImage])
  {        
    // pull GPS information from photos metadata using ALAssetsLibrary
    void (^ALAssetsLibraryAssetForURLResultBlock)(ALAsset *) = ^(ALAsset *asset)
    {
        // code snipped out 
    };
    NSURL *assetURL = [info objectForKey:UIImagePickerControllerReferenceURL];
    ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
    [library assetForURL:assetURL
             resultBlock:ALAssetsLibraryAssetForURLResultBlock
            failureBlock:^(NSError *error) 
            {
                // code snipped out
            }];

    // getimage from imagePicker and resize it to the max size of …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c uiimagepickercontroller uiimage alassetslibrary

23
推荐指数
3
解决办法
5万
查看次数

ios 7图像选择器里面的popover错误行为

我的图像选择器视图控制器设置在弹出控制器内.在iOS 6上,一切都运行良好,但在iOS 7上,图像旋转,所有移动都在做:当转动iPad时,左图像向下移动,向上移动图像向左移动等.

这是显示我的相机的代码:

UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
    imagePicker.delegate = self;
    imagePicker.sourceType =  UIImagePickerControllerSourceTypeCamera;

    objPopView = [[UIPopoverController alloc] initWithContentViewController:imagePicker];
    [objPopView presentPopoverFromRect:CGRectMake(842, 163, 0, 0)
                                inView:self.view
              permittedArrowDirections:UIPopoverArrowDirectionRight
                              animated:YES];
Run Code Online (Sandbox Code Playgroud)

我的应用仅使用横向模式,现在图像被旋转: 在此输入图像描述

objective-c uiimagepickercontroller ipad ios ios7

23
推荐指数
2
解决办法
6225
查看次数

收到内存警告.显示UIImagePickerController时Level = 1

这真让我抓狂!!!

每当我尝试使用sourceType = UIImagePickerControllerSourceTypeCamera显示UIImagePickerController时,我都会收到"已接收内存警告.级别= 1".

这是我在viewDidLoad中设置的代码:

    - (void)viewDidLoad {

    [super viewDidLoad];

    // Set card table green felt background
    self.view.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed:@"green_felt_bg.jpg"]];


    // Init UIImagePickerController
    // Instantiate a UIImagePickerController for use throughout app and set delegate
    self.playerImagePicker = [[UIImagePickerController alloc] init];
    self.playerImagePicker.delegate = self;
    self.playerImagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
}
Run Code Online (Sandbox Code Playgroud)

这是我如何以模态呈现它..

- (IBAction) addPlayers: (id)sender{
[self presentModalViewController:self.playerImagePicker animated:YES];
Run Code Online (Sandbox Code Playgroud)

}

结果...... UIImagePicker开始显示然后繁荣......我得到了记忆警告......每一次!有趣的是,如果我切换到sourceType = UIImagePickerControllerSourceTypePhotoLibrary ......一切正常.

我错过了什么或做错了什么?我想做的就是显示相机,拍摄并保存图片.

仅供参考 - 我正在测试我的3GS设备.

感谢任何能提供帮助的人 :)

iphone objective-c uiimagepickercontroller didreceivememorywarning

22
推荐指数
3
解决办法
4万
查看次数

iOS SDK - 如何在使用UIImagePickerController时恢复状态栏?

一旦我将UIImagePickerController子视图添加到我的视图中,状态栏就会消失,我无法将其恢复.有没有办法保持状态栏可见?

UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;


[self.view addSubview:imagePicker.view];

[imagePicker viewWillAppear:YES];
[imagePicker viewDidAppear:YES];

[[UIApplication sharedApplication] setStatusBarHidden:NO animated:NO];
Run Code Online (Sandbox Code Playgroud)

iphone statusbar uiimagepickercontroller

22
推荐指数
3
解决办法
3万
查看次数

如何在ios中从UIImagePickerController中选择视频后避免压缩

我正在使用UIImagePickerController从Gallery中选择视频并压缩该视频.我想禁用压缩但我找不到这样做的方法.我也尝试使用ELCImagePickerController它显示视频,但它看起来像一个图像,只有没有视频图标或持续时间,就像在UIImagePickercontroller中显示的那样.我可以这样做吗?

谢谢.

iphone uiimagepickercontroller

22
推荐指数
3
解决办法
1万
查看次数

目标C:如何修复图像的宽高比(而不是更改为适合图像视图帧)

我正在使用UIImagePickerController为我的应用程序选择图像.然而,我在维持所选图像的纵横比方面面临一些挑战

例如,

我手机上的原始图像如下(非方形图像):

在此输入图像描述

通过"移动和缩放"页面在iphone上选择图像以裁剪图像后,结果如下:(此处仍保持宽高比)

在此输入图像描述

我的应用程序将在带有方框(200 x 200)的UIImageView中显示所选图像.将所选图像设置为UIImageView(UIImageView.image = selectedImage)后,图像的宽高比不会保持,而是跟随UIImageView的框架:(图像看起来在我的UIImageView中现在倾斜):

在此输入图像描述

在这种情况下,有没有办法保持图像的纵横比?

编辑:更新预期结果

经过一番思考,我意识到解决我的问题的最好方法是确保对于这样的图像(非正方形),我需要将它们"转换"成方形图像,即填充图像顶部和底部的空白区域以制作广场例如

预期图片:(添加了顶部和底部边框)

在此输入图像描述

编辑:使用示例代码更新

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)img editingInfo:(NSDictionary *)editInfo 
{

    self.imageView.contentMode = UIViewContentModeScaleAspectFill;

    self.imageView.image = image;
    [[picker parentViewController] dismissModalViewControllerAnimated:YES];

    //Compress image
    UIImage *image = [self scaleImage:img toSize:CGSizeMake(612.0,612.0)];

    self.imageData = UIImageJPEGRepresentation(image, 0.75);
}
Run Code Online (Sandbox Code Playgroud)

通过添加代码"self.imageView.contentMode = UIViewContentModeScaleAspectFill;",我能够在uiimageview中获取方形图像

在此输入图像描述

但似乎原始图像仍然不是方形图像,因此当我执行"UIImage*image = [self scaleImage:img toSize:CGSizeMake(612.0,612.0)];"时,仍会出现偏斜问题.我的假设是否正确?无论如何要缓解这个问题,因为我仍然需要在应用程序的其他地方显示"压缩"图像.

objective-c aspect-ratio uiimagepickercontroller ios

21
推荐指数
3
解决办法
6万
查看次数

用户照片的相机叠加未保存为已编辑

我正在使用带有剪切的透明图像,以便用户插入/拍摄自己的图像.出于某种原因,在使用UIImagePickerControllerEditedImage和裁剪用户拍摄的照片时,图像不会像编辑时那样保存; 比如看照片.

我的问题是图像没有准确保存照片的编辑方式.(即:裁剪/调整大小).

设置UIImagePicker

-(void)choosePhotoDialog:(id)sender
{        
    OverlayView * overlay = [[OverlayView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH_IPHONE, SCREEN_HEIGTH_IPHONE) andPhoto:[dict objectForKey:@"imageUrl"]];
    [overlay setUserInteractionEnabled: NO];

    UIImagePickerController * picker = [[UIImagePickerController alloc] init];
    [picker setSourceType: UIImagePickerControllerSourceTypeCamera];
    [picker setDelegate: self];
    [picker setAllowsImageEditing: YES];
    [picker setShowsCameraControls: YES];
    [picker setNavigationBarHidden: YES];
    [picker setWantsFullScreenLayout: YES];
    [picker setCameraOverlayView: overlay];
    [self presentModalViewController:picker animated:YES];  
    [picker release];
}
Run Code Online (Sandbox Code Playgroud)

编辑图像后:

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    SDWebImageManager * manager = [SDWebImageManager sharedManager];
    UIImage * cachedImage  = [manager imageWithURL: [NSURL URLWithString: …
Run Code Online (Sandbox Code Playgroud)

uiimagepickercontroller uiimage cgimage ios camera-overlay

21
推荐指数
1
解决办法
2119
查看次数

UIImagePickerController如何从后置摄像头到前置摄像头进行动画切换?

我一直在使用自定义覆盖UIImagePickerController控制器,一切正常.我已经添加了按钮,可以在前后摄像头之间切换 -

 - (IBAction)changeCamera:(id)sender {
if (self.imagePicker.cameraDevice == UIImagePickerControllerCameraDeviceRear) {
    self.imagePicker.cameraDevice = UIImagePickerControllerCameraDeviceFront;
}
else {
    self.imagePicker.cameraDevice = UIImagePickerControllerCameraDeviceRear;
}
}
Run Code Online (Sandbox Code Playgroud)

问题是,开关没有动画.我一直在使用建立在UIImagePicker之上的苹果相机应用程序,并且开关正在发生动画.我该怎么做呢?

iphone camera uiimagepickercontroller uiviewanimation

21
推荐指数
2
解决办法
4507
查看次数