我通过引用另一个类传递我的UINavigationController。但它显示错误请求的属性表达式地址。
MyUtil * util = [[MyUtil alloc] init];
[util NavAndBackBtn:& self.navigationController]; //在这里给出错误..
MyUtil.m
-(void)NavAndBackBtn:(UINavigationController **)nav // ** for passing by reference
{
UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
[btn setImage:[UIImage imageNamed:@"icon_back.png"] forState:UIControlStateNormal];
[button setFrame:CGRectMake(0,0,36,20);
UIBarButtonItem *barbtn = [[UIBarButton alloc] initWithCustomView:btn];
//*nav.navigationController.navigationItem.leftBarButtonItem = barbtn;// this gives error
//then i set this nav to Util nav
self.main_nav_ofUtilClass = *nav;
sefl.main_nav_ofUtilClass.navigationItem.leftBarButtonItem =barbtn;
}
问题
如何通过引用传递 UINavigationController 。 所以无论我对另一个类中的UINavigationController做了什么改变都会发生。
我只是想在另一个类名MyUtil中向UINavigationController添加一个后退按钮图像
答案 0 :(得分:0)
我认为你在方法名称中犯了错误
-(void)NavAndBackBtn:(UINavigationController **)nav
使用而不是这个
-(void)NavAndBackBtn:(UINavigationController *)nav
删除**