您的位置:首页 > 产品设计 > UI/UE

iOS UINavigationItem.backBarButtonItem 设置-利用系统自带返回箭头

2016-03-15 21:53 435 查看
-(void)changeViewControllerWithResult:(NSDictionary *)result{

[BusyIndicatotUtility hideHUDInController:self];

TimeBoxViewController *timeBoxVC = [self.storyboard instantiateViewControllerWithIdentifier:@"timeBoxViewController"];

viewController.resultForInitTime = result;

#pragma mark - 下一个VC即timeBoxVC的naviBar 返回按钮如果想用系统默认自带的“<”箭头,则可在[self.navigationController pushViewController:timeBoxVC animated:YES]这个方法之前 添加以下代码;或者在storyBoard中 设置navigationBarTitle的下方 添加back Item :为“Back”;

#warning - 此方法必须写在push方法之前 && 此方法设置的不是当前VC NaviBarItem,而是要pushto的那个VC的返回按钮

UIBarButtonItem *backItem = [[UIBarButtonItem alloc] init];

backItem.title = @"Back";//字符串可随便定义或为nil

backItem.target = self;

backItem.action = @selector(back:);//此处定义的back:方法根本不会被执行,原因见下面解释,所以可以省略不写

self.navigationItem.backBarButtonItem = backItem;

#pragma mark

[self.navigationController pushViewController:timeBoxVC animated:YES];

}

#warning - self.navigationItem.backBarButtonItem的@selector方法 系统默认的是返回上一页即 [self.navigationController popViewControllerAnimated:YES]; 如果想在这里改为popTo指定的VC, 则实现不了。。因为 注意:程序根本不会走下面这个我自己添加的- (void)back:(id)sender方法,所以里面的内容方法也不会实现。。。如果下一页的返回按钮想popto指定的VC,我所能会的只能是自定义leftBarButtonItem

//此方法根本不会被执行

- (void)back:(id)sender {

[self.navigationController popViewControllerAnimated:YES];

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: