2010-03-28 3 views
0

Я нуб в OBJ-C :)добавление UIImageView в UIScrollView бросает исключение прикосновения какао для IPad

Я пытаюсь добавить UIImageView в UIScrollView чтобы отобразить увеличенное изображение в моем iPhone приложение.

я следовал учебнику здесь именно:

http://howtomakeiphoneapps.com/2009/12/how-to-use-uiscrollview-in-your-iphone-app/

Единственное отличие состоит в том, что в моем App Зрение на вкладке индивидуальной и я использую другое изображение.

вот мой код:

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    UIImageView *tempImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Cheyenne81"]]; 
    self.imageView = tempImageView; 
    [tempImageView release]; 

    scrollView.contentSize = CGSizeMake(imageView.frame.size.width, imageView.frame.size.height); 
    scrollView.maximumZoomScale = 4.0; 
    scrollView.minimumZoomScale = 0.75; 
    scrollView.clipsToBounds = YES; 
    scrollView.delegate = self; 
    [scrollView addSubview:imageView]; 
} 

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{ 
    return imageView; 
} 

и:

@interface UseScrollViewViewController : UIViewController<UIScrollViewDelegate>{ 
    IBOutlet UIScrollView *scrollView; 
    UIImageView *imageView; 
} 

@property (nonatomic, retain) UIScrollView *scrollView; 
@property (nonatomic, retain) UIImageView *imageView; 

@end 

Я затем создать UIScrollView в Interface Builder и связать его с выходным отверстием Scrollview. То когда я получаю проблему. Когда я запускаю программу, она срабатывает мгновенно. Если я запустил его, не связав scrollView с выходом, он запустится (пусть и с экраном blnk).

Ниже ошибка я получаю в консоли:

2010-03-27 20: 18: 13,467 UseScrollViewViewController [7421: 207] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIViewController 0x4a179b0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key scrollView.'

ответ

0

Во-первых, обязательно « iPad SDK по-прежнему находится под NDA, поэтому вы не должны публиковать этот вопрос здесь, и мы не можем помочь вам ответить.

Теперь, если бы это было и приложение для iPhone, я бы сказал, что зайдите в конструктор интерфейса: нажмите «Владелец файла» и в инспекторе убедитесь, что класс установлен в качестве класса, который вы используете для загрузки nib.

+0

это приложение для iPhone, я не знаю, о чем вы говорите;) Спасибо за ответ, есть только одно сообщение, о котором вы говорите, не так ли? Я подключил scrollView в IB к выходу scrollView путем управления + перетаскиванием клика из UIScrollView в владельца файла и выбрал выход «scrollView». Есть ли что-то еще, что я должен делать? (Я очень новичок в этом, поэтому я уверен, что это очень очевидная ошибка с моей стороны) – Brodie

+0

см. В ответе выше. –

+0

Я проверил, и владелец файла был установлен в класс, в котором указан вышеприведенный код. Должен ли класс для владельца этого файла быть установленным классу, который содержит весь вышеприведенный код? Это приложение просмотра табуляции.В любом случае я попытался изменить класс на firstResponder, а также AppDelegate, и я все равно получил тот же самый крах, как только загрузил приложение. – Brodie

1

Попробуйте добавить

@synthesize imageView; 

в @implementation из UseScrollViewViewController.

+0

scrollView и imageView уже синтезированы – Brodie

1

Как не было принято решение проблемы, я решил, что я отправлю свой ответ, который решил мою аналогичную проблему.

Как используется панель вкладок, вы также должны проверить атрибуты контроллера панели вкладок в IB. Скорее всего, тип вашего контроллера просмотра (который находится в элементе управления Tab Bar, который, как мне кажется, в MainWindow.xib), является UIViewController. Измените его на свой конкретный контроллер.

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