У меня проблема с доступом к методам просмотра из его UIViewController.Я начал программировать в xcode только 2 недели назад, и мне нужно изменить программу, созданную другим человеком.
UIView был перетаскиванием в конструкторе интерфейсов в .xib UIViewController и инициализируется методомinitWithFrame и drawRect.Это представление содержит NSTimer, который мне нужно остановить, когда пользователь нажимает кнопку закрытия на панели навигации.
Поэтому у меня есть IBAction в UIViewController, который активируется при нажатии кнопки закрытия.И этот метод должен запустить один из методов UIView, но он не работает.Xcode не обнаруживает ошибок или предупреждений, но код UIView никогда не запускается.Когда я запускаю приложение, все работает нормально, но это.
UIView.h:
@ interface Clock3D: UIView {
...
NSTimer * timer;
NSTimer * timerS;
}
...
@property (сохранение, неатомное) NSTimer * таймер;
@property (сохранение, неатомное) NSTimer * timerS;
...
- (void) doneTest;
@ end
UIView.m:
@ реализация Clock3D
@ синтезировать таймер, timerS,...
...
- (void) doneTest {
NSLog (@ "arret timerS");
[timerS invalidate];
NSLog (@ "arret timer");
[таймер недействителен];
}
UIViewController.h:
import "Clock3D.h"
@ class Clock3D;
@ interface Popup360: UIViewController {
...
Clock3D * clock3D;
}
...
@property (сохранить, неатомный) IBOutlet Clock3D * clock3D;...
- (IBAction) выполнено;
@ end
UIViewController.m:
@ реализация Popup360
@synthesize ..., clock3D;
- (IBAction) выполнено {
[clock3D doneTest];
[self dismissModalViewControllerAnimated: YES];
}
Итак, команда [clock3D doneTest]не работает (NSLog из doneTest никогда не появляется в журнале), но команда [self dismissModalViewControllerAnimated: YES];работает.
Спасибо за ваш ответ.