问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何在navigationcontroller中间设置个按钮

发布网友 发布时间:2022-05-23 03:37

我来回答

1个回答

热心网友 时间:2023-10-12 01:08

  一、UINavigationcontroller自带的navigationBar 是无法添加左箭头的返回按钮的

  在网上搜索了一下 但是真的有方法可以添加成功,但是前提是该 navigationBar不是NavigationController自带的。

  如果是自带的navigationBar就无法添加成功,会出现

  

  [csharp] view
plaincopy

  Terminating app e to uncaught exception 'NSInternalInconsistencyException', reason: 'Cannot call setItems:animated: directly on a UINavigationBar managed by a controller.'

这样的错误,意思就是“ 苹果不允许 直接对受一个Controller控制的naviBar 进行 setItems操作”,
仔细一查,真的有这样的规定

  

  "The navigation bar managed by the controller. Pushing, popping or setting
navigation items on a managed navigation bar is not supported."

  意思很明确了: 这个naviBar是受controller管理的,不支持Pushing, popping or setting navigation
items操作。

  看到这儿,我也很无语了,所以只好自己切图了,切出左箭头的样式来添加leftBarButtonItem 了。

  

  二、单独的UINavigationBar添加左箭头的返回按钮

  但是还是贴出来,单独的一个NavigationBar怎么添加 左箭头的返回按钮代码,这段代码想必看了很多次了吧,哈哈,不厌其烦的在贴一遍好了

  

  [csharp] view
plaincopy

  UINavigationItem *navigationItem = [[UINavigationItem alloc] initWithTitle:@""];

  [self.naviBar pushNavigationItem:navigationItem animated:NO];

  self.naviBar.delegate = self;

  //创建一个右边按钮

  UIBarButtonItem *rightButton = [[UIBarButtonItem alloc] initWithTitle:@"右边"

  style:UIBarButtonItemStyleDone

  target:self

  action:@selector(clickRightButton)];

  [navigationItem setRightBarButtonItem:rightButton];

  [navigationItem setTitle:@"我的页面"];

  UINavigationItem *item = [self.naviBar.items objectAtIndex:0];

  [self.naviBar pushNavigationItem:item animated:YES];

  UINavigationItem *back = [[UINavigationItem alloc] initWithTitle:@"Back"];

  NSArray *items = [[NSArray alloc] initWithObjects:back,item,nil];

  [self.naviBar setItems:items animated:NO];

  

  

  如何捕获左箭头返回按钮的事件呢? 你需要去实现 UINavigationBarDelegate 协议里面的方法。

  

  [csharp] view
plaincopy

  - (BOOL)navigationBar:(UINavigationBar *)navigationBar shouldPopItem:(UINavigationItem *)item

  {

  //在此处添加点击back按钮之后的操作代码

  NSLog(@"aaaaaaaaaaaaa");

  return FALSE;

  }
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
怎么鉴别匡威真假鉴别鉴别匡威真假的方法与技巧 洛阳小碗汤怎么做 酥肉丸子汤如何烹饪简单而又不失美味? 直通车产出比多少不亏?产出比低怎么调整? 淘宝直通车投产比多少才是盈利?怎么提升? 车打不着拧钥匙没反应 车打火的钥匙拧不动 微信关闭时后台还在图标上还有个小锁什么意思 坦克世界闪击战电脑需求配置玩坦克世界电脑配置要达到什么标准_百度... 坦克世界对电脑配置要求高不高玩坦克世界电脑需要什么配置要求 坦克世界对电脑的配置要求是多少坦克世界配置要求 IOS 中navigationItem中的title如何实现被点击 sony的navigation controller有什么用 三菱FX2N PLC,中的计数器怎么用法?能不能在触摸屏上显示数值呀? 大众点评合作收费标准 为什么我的UIBarButtonItem点击没有反应 点歌机如何连接? 高数计数器编的程序如何在触摸屏上显示 如何调整导航条上的leftBarButtonItem和rightBarButtonItem的位置 如何修改navigationItem的rightBarButtonItem 背景颜色 如何设置leftBarButtonItem左对齐 如何令BackBarButtonItem只有箭头,而没有文本 固安大众点评推广多少钱 三菱plc的记数器怎么显示触摸屏编程 uinavigationcontroller不设置根控制器能显示东西吗,我建了一个AddressViewController,h和.m文件,还有 如何隐藏UIBarButtonItem按钮 西门子触摸屏怎么显示出计数器的历史数据 EXCEL 不能打印 换个打印机或者换 怎么把PLC程序的定时器与计时器时间与计数功能显示到触摸屏上请大神帮 有个片段讲一个士兵一直往后方背伤员,连敌军也背回去,放成一排 画色彩时应该多用白么? ios 导航栏不能使用dismissviewcontrolleranimated方法吗 威纶通 台达PLC计数器怎样才能把台达计数器C的值在触摸屏里面显示出来呀 家用点歌机可以加装蓝牙发射功能吗? 如何将PLC里计数器的设定值和每加1的当前值在触摸屏上显示出来呢 龙族4主要讲什么啊 点歌机是否能安装蓝牙软件? 龙族4奥丁之渊什么意思 龙族4奥丁之渊章节之如何评价龙族4奥丁之渊4 关于龙族4奥丁之渊 龙族4奥丁之渊路明非会死吗 龙族4奥丁之渊尾声什么意思,感觉是没写完留一个悬念吗? 龙族4奥丁之渊路明非什么时候说过只有楚子航是狮心会会长 用生辰八字起店名 JJ斗地主兑换商城 怎么样用斗地主开宝箱中获得的物品换取Q币 有哪个单机斗地主好玩又能兑换支付宝的帮推荐 迪卡侬(上海)体育用品有限公司青岛正阳路分公司怎么样? 青岛科技大学食堂有档口出租吗 急需能把视频的声音用立体声提取出来的软件 如何将视频里的音频以立体声的形式提取出来?并去除bgm保留人物对话,用什么软件比较好?