:
- (IBAction)pick:(id)sender {
NSLog(@"abc");
picker = [[UIImagePickerController alloc] init];
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
[picker setSourceType:UIImagePickerControllerSourceTypeCamera];
} else {
[picker setSourceType:UIImagePickerControllerSourceTypePhotoLibrary];
}
// Add here your custom UI here
[picker setCameraOverlayView:self.customCameraOverlayView];
[picker setDelegate:self];
[self presentViewController:picker animated:YES completion:nil];
}
DÜZENLEME
UIImagePickerController
ürününü test ettik ve görüntüyü tam boyutlarıyla döndürdüm (PixelXDimension ve PixelYDimension):
UIImagePickerControllerMediaMetadata = {
DPIHeight = 72;
DPIWidth = 72;
Orientation = 6;
"{Exif}" = {
ApertureValue = "2.526068811667588";
BrightnessValue = "-0.5779073354035674";
ColorSpace = 1;
DateTimeDigitized = "2013:04:07 22:30:03";
DateTimeOriginal = "2013:04:07 22:30:03";
ExposureMode = 0;
ExposureProgram = 2;
ExposureTime = "0.05882352941176471";
FNumber = "2.4";
Flash = 24;
FocalLenIn35mmFilm = 35;
FocalLength = "4.28";
ISOSpeedRatings = (
800
);
MeteringMode = 3;
PixelXDimension = 3264;
PixelYDimension = 2448;
SceneType = 1;
SensingMethod = 2;
ShutterSpeedValue = "4.058893689053568";
SubjectArea = (
1874,
1478,
610,
612
);
WhiteBalance = 0;
};
"{TIFF}" = {
DateTime = "2013:04:07 22:30:03";
Make = Apple;
Model = "iPhone 4S";
Software = "6.1.3";
XResolution = 72;
YResolution = 72;
};
};
DÜZENLEME Ayrıca
yeniden boyutlandırmak ve konteyner görünüme uygun şekilde içerik modunu görüntülemek için, görüntüye ayarlayabilirsiniz:
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
[self dismissViewControllerAnimated:YES completion:nil];
UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];
[imageView setContentMode:UIViewContentModeScaleAspectFill];
[imageView setImage:image];
}
ve ihtiyacınız kadar bundan sonra imageView
uyacak şekilde kontrol cihazını, cihaz ekranını (4 inç veya değil) auto layout
veya auto sizing
kullanarak dikkate alarak görüntüleyin.
İkinci bölüm işe yaradı, ancak ilk kısımda yer paylaşımı sadece ekranın üstünde. Düğmelerin (fotoğraf simgesi) kendilerini nasıl gördüğünü değiştirmek istiyorum. Bunu nasıl yapardım? –
'showCameraControls' kullanarak varsayılan denetimleri gizleyebilir ve' cameraOverlayView' kullanarak ayarladığınız özel kullanıcı arayüzünüzde, imagePickerController öğesinin 'takePicture' yöntemini çağıran bir eylemle bir düğme ekleyebilirsiniz. – alexcristea
'imageView' nesnesi nereden geldi? – lelelo