HiI очень новичок в разработке iphone. Я разработчик java-фона. Так что мой подход похож на java.Как вызвать глобальную функцию из другой глобальной функции с одним параметром в iphone?
Здесь мое требование состоит в том, что я хочу вызвать одну глобальную функцию из каждого контроллера вида. и оттуда я передаю self.navigationController в качестве параметра. В этой функции я добавляю некоторый бутон. когда пользователь нажимает на эту кнопку, он должен вызывать еще одну функцию и должен иметь тот же объект, что и параметр.
, пожалуйста, дайте мне указания. я попытался следующим образом, но он показывает ошибку в compiletime
Utilities.m
+(void)setBacKButton:(UINavigationController *)navigationController
{
for(UIButton *btn in navigationController.navigationBar.subviews){
if([btn isKindOfClass:[UIButton class]]){
[btn removeFromSuperview];
}
}
UIButton *btn2=[UIButton buttonWithType:UIButtonTypeCustom];
btn2.frame=CGRectMake(708, 0, 50, 54);
[btn2 setImage:[UIImage imageNamed:@"btn_back.png"] forState:0];
[btn2 setImage:[UIImage imageNamed:@"btn_back_h.png"] forState:UIControlStateSelected];
// here i need to call bellow function when click on this button
//[btn2 addTarget:self action:@selector() forControlEvents:UIControlEventTouchUpInside];
[navigationController.navigationBar addSubview:btn2];
}
+(void)gotoBack:(UINavigationController *)navigationController
{
[navigationController popViewControllerAnimated:YES];
}
и я называю эту функцию из моего ViewController в
[Utilities setBacKButton:self.navigationController];
скажите, пожалуйста, как мы можем достичь этого
спасибо за повтор, но я хочу реализовать один метод для поп-экрана. для этого мне нужен объект navigationcontroler, так как я могу получить этот объект контроллера навигации? –
просто инициализируйте объект контроллера навигации в приложении appdelegate и нажмите на консольный контроллер для этого контроллера навигации. Это основной принцип работы на основе навигации. Вам нужен объект контроллера просмотра только в этой функции и нажмите его на навигацию appdelegate контроллер. – hacker