(一)使用NavigationViewController进行页面跳转时,应该使用pushViewController方法来跳转至下一页面。这种话。下一页面相同在NavigationViewController容器中。

1、跳转到下一页面:

PowerViewController *power = [[PowerViewController
alloc] init];

//所要跳转页面PowerViewController中有个属性dictionary1是个NSMutableDictionary类型的容器
[power.dictionary1
setObject:[self.outTxtPass text] forKey:ALONE_SITEPRIZE_PWD];
//使用pushViewController跳转到下一页面
[self.navigationController
pushViewController:power animated:
YES];

2、从当前页面返回到上一页面并传值过去:

//此页面已经存在于self.navigationController.viewControllers中,而且是当前页面的前一页面

PowerViewController
*power = [self.navigationController.viewControllers objectAtIndex:self.navigationController.viewControllers.count-
2];
//初始化其属性
power.dictionary
= nil;
//传递參数过去
power.dictionary
= [NSMutableDictionary dictionaryWithDictionary:self.dictionary1];
//使用popToViewController返回并传值到上一页面
[self.navigationController
popToViewController:power
animated:YES
];

返回到上一页后,上一页面显示后要接收參数,并刷新。

注意此时应该在viewDidAppear中进行推断并接收传递的值:

-(void)viewDidAppear:(BOOL)animated
{
  //推断并接收返回的參数
 
}

3、从当前页面返回到上一页面(无需传值)的方法:
//返回到上一界面
-(IBAction)backOff:(id)sender
{
    [self.navigationController
popViewControllerAnimated:
true];
}

(二)关于ios中 viewcontroller的跳转问题。当中有一种方式是採用navigationController pushViewController 的方法,比方我从主页面跳转到了一级页面,又从一级页面跳转到了二级页面。然后从二级页面跳转到了三级页面,依次类推。假设一级一级的返回我知道是没有问题的。调用navigationController popViewControllerAnimated即可了。

可是某些情况下我可能想要立即回到主页面,而不是一级一级的返回(假设有非常多层会非常累的),那该怎么办呢?

1.返回根页面vc用

[self.navigationController
popToRootViewController]

2.返回根页面vc用

[self.navigationController
popToViewController:[self.navigationController.viewControllers objectAtIndex:2] animated:YES];

或(通过class定位)

for

(UIViewController *controller in self.navigationController.viewControllers) {
    if

([controller isKindOfClass:[TargetController
class]])
{
        [self.navigationController
popToViewController:controller animated:YES];
    }
}

最新文章

  1. 由多线程引起的map取值为null的分析
  2. spring mvc 通过配置xml访问控制器的三种方式
  3. PHP学习笔记:APACHE配置虚拟目录、一个站点使用多域名配置方式
  4. JSON对象和字符串之间的相互转换
  5. sql实现分页
  6. javascript中间preventDefault与stopPropagation角色介绍
  7. MapReduce常见算法
  8. codeforces 893B Beautiful Divisors 打表
  9. ==和equals详解+例子
  10. 2-SAT 问题与解法小结
  11. Go碎碎念
  12. 【转】linux在shell中获取时间 date巧用
  13. Go 开源博客平台 Pipe 1.0.0 发布!
  14. linux最靠谱安装python3
  15. python 闭包用法
  16. java的类class 和对象object
  17. docker nginx 运行后无法访问
  18. MySQL库操作,表操作,数据操作。
  19. MySql修改WordPress密码
  20. 20162327WJH实验五——数据结构综合应用

热门文章

  1. linux tail指令
  2. 代理Delegation
  3. apache2.2 到 2.4后配置文件需要更改的部分
  4. 如何让mysql的自动递增的字段重新从1开始呢?(
  5. A read-only user or a user in a read-only database is not permitted to disable
  6. ionic准备之angular基础——dom操作相关(6)
  7. Hdu 2243 考研路茫茫——单词情结 (AC自己主动机+矩阵)
  8. Win8.1应用开发之Bing Maps
  9. d3.js封装文本实现自动换行和旋转平移等功能
  10. devpress grid表格自适应列宽的问题