首页 技术 正文
技术 2022年11月7日
0 收藏 576 点赞 1,029 浏览 1954 个字

上篇说到了添加UIBarButtonItem,接下来说说界面切换;

1、首先我们在刚才的RootViewController中添加一个按钮用来实现跳转:

打开RootViewController.m(我就继续写了),添加一个跳转button:

ios基础篇(十一)——UINavgationController的使用(二)页面切换

效果图:

ios基础篇(十一)——UINavgationController的使用(二)页面切换

2、button动作实现,新建一个NewViewController继承自UIViewController;用pushViewController到navigationController中去;

ios基础篇(十一)——UINavgationController的使用(二)页面切换

#import "NewViewController.h"
- (void)nextAction{    NewViewController *NewVC = [[NewViewController alloc] init];
[self.navigationController pushViewController:NewVC animated:YES];
NewVC.title = @"NewViewController";
}

点击button,如图Back为系统自带按钮;

ios基础篇(十一)——UINavgationController的使用(二)页面切换

如果不想使用系统自带按钮,我们可以自定义按钮:

 UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"返回"style:UIBarButtonItemStyleDone target:nil action:nil];
self.navigationItem.backBarButtonItem = backButton;

如图:

ios基础篇(十一)——UINavgationController的使用(二)页面切换

3、title的自定义:

 #import "NewViewController.h" @interface NewViewController () @end @implementation NewViewController - (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view. UILabel *title = [[UILabel alloc] init];
title.text = @"标题";
title.font = [UIFont systemFontOfSize:];
[title sizeToFit];
self.navigationItem.titleView = title; }

效果图:

ios基础篇(十一)——UINavgationController的使用(二)页面切换

4、如果想放置多个按钮:

SegmentedControl又被称作分段控制器,可以一下放置多个按钮又不影响美观:

 NSArray *colorArray = @[@"黑", @"白", @"灰"];
UISegmentedControl *segmentCtrl = [[UISegmentedControl alloc] initWithItems:colorArray];
segmentCtrl.selectedSegmentIndex = ;
segmentCtrl.tintColor = [UIColor redColor];
self.navigationItem.titleView = segmentCtrl;

效果图:

ios基础篇(十一)——UINavgationController的使用(二)页面切换

添加点击响应事件:

[segmentCtrl addTarget:self action:@selector(segmentAction:) forControlEvents:UIControlEventValueChanged];

- (void)segmentAction:(id)segment{    switch ([segment selectedSegmentIndex]) {
case :
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"提示" message:@"您选择了颜色黑" delegate:self cancelButtonTitle:@"是" otherButtonTitles:@"否", nil];
[alert show]; }
break;
case :
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"提示" message:@"您选择了颜色白" delegate:self cancelButtonTitle:@"是" otherButtonTitles:@"否", nil];
[alert show]; }
break;
case :
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"提示" message:@"您选择了颜色灰" delegate:self cancelButtonTitle:@"是" otherButtonTitles:@"否", nil];
[alert show]; }
break; default:
break;
}
}

效果图:

ios基础篇(十一)——UINavgationController的使用(二)页面切换

ios基础篇(十一)——UINavgationController的使用(二)页面切换

ios基础篇(十一)——UINavgationController的使用(二)页面切换

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,903
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,428
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,245
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,057
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,689
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,726