·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> app软件开发 >> IOS开发 >> [IOS学习笔记]UINavigationControllerDemo

[IOS学习笔记]UINavigationControllerDemo

作者:佚名      IOS开发编辑:admin      更新时间:2022-07-23
//AppDelegate.m

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customization after application launch. self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; self.window.backgroundColor=[UIColor whiteColor]; RootViewController *rootView=[[RootViewController alloc]init]; UINavigationController *nav = [[UINavigationController alloc]initWithRootViewController:rootView]; [_window setRootViewController:nav]; [nav release]; [rootView release]; return YES; }

 

//RootViewController.m

- (void)viewDidLoad {
    // Do any additional setup after loading the view.
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    [self.navigationController.navigationBar setTranslucent:NO];//设置navigationbar的半透明
    
    self.title = @"RootViewController";//设置navigationbar上显示的标题
    
    [self.navigationController.navigationBar setBarTintColor:[UIColor purpleColor]];//设置navigationbar的颜色
    
    self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonItemStyleDone target:self action:Nil];//设置navigationbar左边按钮
    
    self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonItemStylePlain target:self action:Nil];//设置navigationbar右边按钮
    
    [self.navigationController.navigationBar setTintColor:[UIColor whiteColor]];//设置navigationbar上左右按钮字体颜色
    
     //self.navigationItem.rightBarButtonItem setTarget:<#(id)#>
    //动态添加一个按钮
    
 
    UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    
    button.frame = CGRectMake(0, 300, 300, 50);
    
    [button setTitle:@"新添加的动态按钮" forState: UIControlStateNormal];
    
    button.backgroundColor = [UIColor clearColor];
    
    button.tag = 2000;
    
    [button addTarget:self action:@selector(clicked:) forControlEvents:UIControlEventTouchUpInside];
    
    [self.view addSubview:button];
    
}

- (void)clicked:(id) sender{
    SecondViewController *second = [[SecondViewController alloc]init];
    [self.navigationController pushViewController:second animated:YES];
    //second.str = @"hello!!";
    [second release];
}
//这个是新按钮的响应函数
-(IBAction) buttonClicked:(id)sender {
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"提示"
                                                    message:@"单击了动态按钮!"
                                                   delegate:self
                                          cancelButtonTitle:@"确定"
                                          otherButtonTitles:nil];
    [alert show];
    [alert release];
}
UINavigationController 导航页
设置根界面: 
  UINavigationController *nav = [[UINavigationController alloc]initWithRootViewController:rootView];

按钮响应:
 [button addTarget:self action:@selector(clicked:) forControlEvents:UIControlEventTouchUpInside];
  响应方法签名:- (void)clicked:(id) sender