2013-10-27 1 views
0

, пожалуйста, помогите добавить добавленную фотографию в рамку UIImageView. Фотография не помещается в рамку. Я сделал все то же самое, что и в «Программе IOS: The Big Nerd Ranch Guide» главы 12 «Камера». Перед добавлением фотографии: https://www.dropbox.com/s/o0uypvspuhvlkm2/Screen%20Shot%202013-10-27%20at%205.08.39%20PM.jpg После добавления: https://www.dropbox.com/s/u6qffb1l941cb0v/Screen%20Shot%202013-10-27%20at%205.09.02%20PM.jpg Я пробовал setContentMode для UIImageView - не работает. Это мой код:Добавлено фото не подходит в рамке UIImageView

#pragma mark UIActionSheetDelegate 

- (IBAction)displayActionSheet:(id)sender 
{ 
    UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:nil 
                  delegate:self 
                cancelButtonTitle:@"Cancel" 
               destructiveButtonTitle:nil 
                otherButtonTitles:@"Take photo", @"Choose photo from gallery", nil]; 

    actionSheet.actionSheetStyle = UIActionSheetStyleDefault; 
    [actionSheet showInView:self.view]; 
} 

- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex 
{ 
    switch (buttonIndex) { 
     case 0: 
      [self takePhoto]; 
      break; 
     case 1: 
      [self choosePhoto]; 
      break; 
    } 
} 

#pragma mark UIImagePickerControllerDelegate 

- (void)takePhoto { 
    UIImagePickerController *pickerControllerTakePhoto = [[UIImagePickerController alloc] init]; 
    [pickerControllerTakePhoto setSourceType:UIImagePickerControllerSourceTypeCamera]; 
    [pickerControllerTakePhoto setDelegate:self]; 
    [self presentViewController:pickerControllerTakePhoto animated:YES completion:nil]; 
} 

- (void)choosePhoto { 
    UIImagePickerController *pickerControllerChoosePhoto = [[UIImagePickerController alloc] init]; 
    [pickerControllerChoosePhoto setSourceType:UIImagePickerControllerSourceTypePhotoLibrary]; 
    [pickerControllerChoosePhoto setDelegate:self]; 
    [self presentViewController:pickerControllerChoosePhoto animated:YES completion:nil]; 
} 

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { 
    UIImage *myPhoto = [info objectForKey:UIImagePickerControllerOriginalImage]; 
    [photoView setImage:myPhoto]; 
    [self dismissViewControllerAnimated:YES completion:NULL]; 
} 

Моих «плюс» или «добавить» действие лист Кнопки вызовов с диалогом, поэтому я выбираю фото из галереи и результата, как на втором скриншоте.

+0

Является 'photoView' действительно UIImageView? – SAE

+0

Да, '__weak IBOutlet UIImageView * photoView;' –

+0

Второй снимок экрана: это вы? – Mundi

ответ

0

Установите просмотров изображения свойства:

imageView.clipsToBounds = YES; 
imageView.contentMode = UIViewContentModeScaleAspectFill; 

Оба могут быть установлены в Interface Builder.

+0

Не работает, задал свойство и добавил код в '- (void) imagePickerController: (UIImagePickerController *) picker didFinishPickingMediaWithInfo: (NSDictionary *) info' –

0

Так я нашел строку кода, которая беспокоила меня, все это из-за моих пользовательских ячеек, которые я ставлю, чтобы мой Tableview:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { 
    UITableViewCell *cell = nil; 
    if (indexPath.row == 0) { 
     photoView = (UIImageView *)[photoCell viewWithTag:1]; // this is the first custom cell in my tableview and this line which I put on the model of the book isn't needed 
     cell = photoCell; 
............................... 
+0

Рад, что вы его нашли. –

 Смежные вопросы

  • Нет связанных вопросов^_^