UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题

深刻理解代理模式

将第一页设为第二页的代理,通过代理完成将第二页的按钮按钮颜色改变,按钮名称传到第一页作为第一页的标题

没有tag怎么找到你创建的试图控制器

在第二页压栈的时候将当前页(即导航栏控制器UINavigationController的根视图控制器此处我将第一页设为根)设为第二页的代理,这样就指定了第二页(指定的)的代理为第一页

第一种:因为已设置第一页为第二页的代理,

在第二页.m文件中写 First * fir =(First *) self.delegate];

第二种:通过navigation的属性viewcontroller获取导航栏所有的控制器,返回值是一个数组,这个数组array【0】的第一个元素就是导航栏的根视图控制器,

UIViewController *vc=self.navigationController.viewControllers[0];

#import "Second.h"

#import "HeadFile.h"

@implementation Second

{

NSArray * _arrayForTitile ;

}

- (void)viewDidLoad{

[super
viewDidLoad];

self.view.backgroundColor = [UIColor
greenColor];

[self
_loadData];

}

#pragma mark - _loadData

- (void)_loadData{

// 标签文字存入数组

_arrayForTitile =
@[@"第1页",@"第2页",@"第3页",@"第4页"];

// 创建4个按钮

for (int i =
0; i < 4 ; i++) {

UIButton * btn = [UIButton
buttonWithType:UIButtonTypeCustom];

btn.backgroundColor = [UIColor
blueColor];

CGRect frame =
CGRectMake(self.view.frame.size.width/2.0-40,
self.view.frame.size.height/2.0-100
+ 50*i ,
80,
35);

btn.frame = frame;

[btn setTitle:_arrayForTitile[i]
forState:UIControlStateNormal];

[btn setTitleColor:[UIColor
lightGrayColor] forState:UIControlStateHighlighted];

[btn addTarget:self
action:@selector(changeColorAndTitle:)
forControlEvents:UIControlEventTouchUpInside];

[self.view
addSubview:btn];

btn.tag = i +100;

}

}

#pragma mark - changeColorAndTitle:

- (void)changeColorAndTitle:(UIButton *)btn{

// 创建4个按钮

btn.backgroundColor = [UIColor
redColor];

for (int i =
0 ; i < 4; i++) {

UIButton * button = (UIButton *)[self.view
viewWithTag:i+100];

if (button.tag != btn.tag) {

button.backgroundColor = [UIColor
blueColor];

}

}

// 获取代理fir

First * fir = (First *)self.delegate;

// 通过代理改变值

[fir
changeTitle:btn.titleLabel.text];

[self.navigationController
popViewControllerAnimated:YES];

}

@end

#import "First.h"

#import "HeadFile.h"

@implementation First

- (void)viewDidLoad{

[super
viewDidLoad];

// 初始化按钮

self.view.backgroundColor = [UIColor
blueColor];

self.title =
@"123124";

UIButton * btn = [UIButton
buttonWithType:UIButtonTypeCustom];

btn.backgroundColor = [UIColor
brownColor];

btn.frame =
CGRectMake(0,
0, 80,
35);

btn.center =
self.view.center;

[btn setTitle:@"下一页"
forState:UIControlStateNormal];

[btn setTitleColor:[UIColor
lightGrayColor] forState:UIControlStateHighlighted];

[self.view
addSubview:btn];

[btn addTarget:self
action:@selector(push)
forControlEvents:UIControlEventTouchUpInside];

}

#pragma mark - push

- (void)push{

Second * sec = [[Second
alloc]init];

sec.delegate =
self;

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

}

#pragma mark - changeTitle

- (void)changeTitle:(NSString *)title{

self.title = title;

}

@end

#import "AppDelegate.h"

#import "HeadFile.h"

@interface
AppDelegate ()

@end

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary
*)launchOptions {

// 设置跟控制器,设置导航栏根控制器

First * first = [[First
alloc]init];

UINavigationController * nv = [[UINavigationController
alloc]initWithRootViewController:first];

self.window.rootViewController
= nv;

return
YES;

}

UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题

UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题

UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题

UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题

UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题

时间: 2024-08-10 19:09:50

UINavigationController导航栏,点击第二页按钮,传标题title到第一页成为第一页标题的相关文章

ios 导航栏 点击barbutton的按钮 下拉列表

环境:xocde5.0.2+ios7.0.1 1.导航栏 ----点击科目--------下拉列表 代码:NGRightTableViewViewController.h #import <UIKit/UIKit.h> @protocol PulldownMenuDelegate -(void)menuItemSelected:(NSIndexPath *)indexPath; -(void)pullDownAnimated:(BOOL)open; @end @interface NGRigh

ios weibo 第二天 设置导航栏属性,添加加号按钮

要点:1.在底部添加加号按钮 2.设置导航栏属性 1.weibo底部的button其中四个按钮是一样的,其中中间的加号需要另外做处理 tablebar是自己定义的 ,代码如下 - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; // 删除系统自动生成的UITabBarButton for (UIView *child in self.tabBar.subviews) { if ([child isKin

ios UINavigationController 导航栏

1.关于导航栏左右两边的按钮 1.隐藏导航栏上的返回字体 //Swift UIBarButtonItem.appearance().setBackButtonTitlePositionAdjustment(UIOffsetMake(0, -60), forBarMetrics: .Default) //OC [[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(0, -60) forBarM

web导航栏点击跳转后的样式

搭建web网页的导航栏时,需要有点击某导航页面跳转后,被点击的<a>标签样式添加或改变(bootstrap只能实现页面不刷新的点击效果),网上查阅了很多,终于解决了问题,豁然开朗的同时也小总结一下: ps:以下为摘录百度知道,并非本人原创,而我用的便是其中第二种方法. 方法有很多,大体可分为三种: 一.在服务器端判断当前页面隶属于哪一个分类,然后对其进行高亮化,这个高亮化的方法也有很多,相信不是你要的,不一一讲解: 二.每一个页面这个导航条都在各自的页面内,那么独立对其分配class或者行内样

React实现导航栏点击高亮

在jquery中实现导航栏的切换只需要一行代码找到同级其他元素removeClass以及添加点击元素addClass就可以实现了,但是React没法直接找到同级元素,这个时候需要一点js中的思维,根据添加的序列号判断该添加哪种className 为了方便实例测试,这个我直接引用了菜鸟教程的在线文件,可以直接将代码粘贴运行 <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <

Android在导航栏添加音量加减按钮安卓源码案例

有些Android设备没有实体的音量调节按钮,或者从保护实体按键的角度考虑,就需要在导航栏的虚拟按键中添加音量加减调节按键. 在这里我推荐一下比较好的android源码片段网站:http://code.662p.com/list/173_1.html 效果如下图所示: 实现过程如下: 1.首先在SystemUI中添加音量加减的资源文件,路径如下: frameworks/base/packages/SystemUI/res/ 将图片放入对应的drawable文件夹,包括音量+,和音量-,见上图.

左侧竖条导航栏点击出现效果的实现

大部分的网站导航栏都是在网页的顶端,这类导航栏看起来非常一般,而有些在左侧竖着显示的导航栏就比较好看一些了,但是今天为大家介绍的是左侧竖条导航栏实现点击出现的效果,也就是刚开始只显示导航,不显示分类栏,而点击导航就可以显示分类栏了,下面一起来看下源代码的实现吧.<!DOCTYPE html><html lang="en"> <head><meta charset="UTF-8"><meta name="

UI控件---UINavigationController导航栏控制器

UINavigationController---称之为导航栏控制器,它继承于UIViewController,以栈的方式管理所有控制的视图控制器(至少有一个被管理的视图控制器,这个控制器我们称之为导航控制器的根视图控制器),通过push和pop控制页面的跳转. 任何继承自UIViewController的类都可以作为根控制器 通常直接将试图控制器ViewController添加到window上,有了navigationController就多了一层 1.navigationItem 每一个加载

iOS UITableView表视图滚动隐藏UINavigationController导航栏

UITableView 继承于UIScrollView 所以UIScrollView 的代理方法同样适用于UITableView 中 隐藏导航栏的方法为: self.navigationController.navigationBar.hidden = YES; 所以我们只有通过滚动的代理方法监测滚动视图的滚动方向来控制导航栏显示还是隐藏即可: 通过实现UIScrollView的代理方法来操作: 方式如下: // 滑动scrollView,并且手指离开时执行.一次有效滑动,只执行一次. // 当