iOS应用开发中实现页面跳转的简单方法笔记

作为新手写的笔记,方便自己记忆:

从android转过来iOS的,对于页面的跳转,找了很多资料,现在记录一下页面跳转的方法。

1.用navigationController

2.直接跳(刚刚在网上找到的,不太熟,有错莫怪)

1.建一个RootViewController,在delegate.h

代码如下:

@property (strong, nonatomic) UIViewController *viewController;
@property (strong, nonatomic) UINavigationController *navController;

delegate.m代码didFinishLaunchingWithOptions函数中写代码:

RootViewController *rootView = [[RootViewController alloc] init];
   rootView.title = @"Root View";
   
   self.navController = [[UINavigationController alloc] init];
   
   [self.navController pushViewController:rootView animated:YES];
   [self.window addSubview:self.navController.view];

这些代码加载第一个页面RootViewController。
跳转到其他页面(比如SubViewController)代码:

代码如下:

SubViewController *subView = [[SubViewController alloc] init];
   [self.navigationController pushViewController:subView animated:YES];
   subView.title = @"Sub";

这样的好处是会自动生成返回按钮。

2.直接跳转,什么都没有

不用做其他多余的,直接新建一个view对象

代码如下:

SubViewController *subView = [[SubViewController alloc] initWithNibName:@"SubViewController" bundle:[NSBundle mainBundle]];
    [self presentModalViewController:subView animated:YES];

这样就好了。

iOS6.0之后都不用这个函数了

代码如下:

[self presentModalViewController:subView animated:YES];

可以换成

代码如下:

[self presentViewController:subView animated:YES completion:nil];

页面跳转时数据的传递
比如在需要实现view1跳到view2的时候,把view1的一些数据传给view2

思路:

1.自定义一个bean类user,在view2实现user为一个成员变量。

2.view1跳的时候把数据封装为user, 并且赋值给view2.user

代码

1. view2

.h 声明成员变量

代码如下:

@property (strong, nonatomic) User *user;

2. view1

代码如下:

View2 *view2 = [[View2  alloc] init];
    User *user = [[User alloc] init];
    user.name = @"kevin";
    view2.user = user;
    [self.navigationController pushViewController: view2
animated:YES];

3. view2

取到变量

代码如下:

self.user.name

(0)

相关推荐

  • iOS开发中ViewController的页面跳转和弹出模态

    ViewController 页面跳转 从一个Controller跳转到另一个Controller时,一般有以下2种: 1.利用UINavigationController,调用pushViewController,进行跳转:这种采用压栈和出栈的方式,进行Controller的管理.调用popViewControllerAnimated方法可以返回. 复制代码 代码如下: PickImageViewController *ickImageViewController = [[PickImageV

  • iOS实现两个控制器之间数据的双向传递

    本文为大家分享了iOS控制器之间数据的双向传递,供大家参考,具体内容如下 首先,有两个控制器,分别为控制器A.控制器B. A->B:数据由控制器A传向控制器B,这叫做数据的顺传:数据由控制器B传向控制器A,这叫做逆传. 顺传:一般通过创建目标控制器对象,将数据赋值给对象的成员来完成: 逆传:一般使用代理来实现,其中控制器A是控制器B的代理(控制器A监听控制器B,控制器B通知控制器A). 下面是博主写的简单实现了两个控制间实现数据的双向传递的app的demo: 1.这是界面设计: FirstVie

  • iOS页面跳转及数据传递(三种)

    iOS页面跳转: 第一种 [self.navigationController pushViewController:subTableViewController animated:YES]; //描述:通过 NSNavigationBar 进行跳转  [self.navigationController popViewControllerAnimated:YES]; //描述:在子视图返回到上级视图 第二种 UIViewController *control = [[UIViewControl

  • IOS 应用之间的跳转和数据传递详解

    说明:本文介绍app如何打开另一个app,并且传递数据. 一.简单说明 新建两个应用,分别为应用A和应用B. 实现要求:在appA的页面中点击对应的按钮,能够打开appB这个应用. 1.新建两个应用,分别为A和B. 142354418874108[1].png 150002248248878[1].png 2.设置应用B的url. 150005160123679[1].png 3.在应用A中编写打开app的代码 150007446066083[1].png 点击之后,会跳转到新的控制器. 注意:

  • iOS应用开发中实现页面跳转的简单方法笔记

    作为新手写的笔记,方便自己记忆: 从android转过来iOS的,对于页面的跳转,找了很多资料,现在记录一下页面跳转的方法. 1.用navigationController 2.直接跳(刚刚在网上找到的,不太熟,有错莫怪) 1.建一个RootViewController,在delegate.h 复制代码 代码如下: @property (strong, nonatomic) UIViewController *viewController; @property (strong, nonatomi

  • php开发中的页面跳转方法总结

    页面跳转可能是由于用户单击链接.按钮等触发的,也可能是系统自动产生的.页面自动跳转在WEB开发中经常用到,而且根据需求可以采用不同的跳转方式,比如提示操作信息后延时跳转等, 本文总结了WEB开发中常见的几种页面跳转方法. PHP header()函数跳转 PHP的header()函数非常强大,其中在页面url跳转方面也调用简单,使用header()直接跳转到指定url页面,这时页面跳转是302重定向: $url = "http://www.jb51.net/"; header( &qu

  • iOS应用开发中使UITextField实现placeholder属性的方法

    我们都知道iOS开发中的UITextField有个placeholder属性,placeholder可以很方便引导用户输入.但是UITextView却没有placeholder属性. 一.猥琐的方法 如何让UITextView也有placeholder功能呢?今天给各位分享一个比较猥琐的做法.思路大概是这样的: 把UITextView的text当placeholder使用. 在开始编辑的代理方法里清除placeholder. 在结束编辑的代理方法里在设置placeholder. 实现方法: 1.

  • iOS App开发中Objective-C使用正则表达式进行匹配的方法

    iOS中有三种方式来实现正则表达式的匹配.现在将他们都记录在这里: 1.利用NSPredicate(谓词)匹配 例如匹配有效邮箱: NSString *email = @"nijino_saki@163.com": NSString *regex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; NSPredicate *predicate = [NSPredicate predicateWithForma

  • Android开发中Activity创建跳转及传值的方法

    在Android系统的江湖中有四大组件:活动(Activity), 服务(Service), 广播接收器(Broadcast Reciver)和内容提供者(Content Provider). 今天所介绍的就是Android开发中的四大组件之一:Activity,其他那三大组件以后再进行介绍.说道Android中的Activity,如果你做过iOS开发的话,Activity类似于iOS中的ViewController(视图控制器).在应用中能看到的东西都是放在活动中的.活动是安卓开发比较重要的东

  • IOS开发中键盘输入屏幕上移的解决方法

    在IOS开法中经常会遇到键盘遮挡屏幕的事情(比如输入账号密码验证码等等),就使得原本都不大的屏幕直接占了一半甚至更多的位置,这倒无所谓,关键是挡住了下面的按钮.这样的话按钮的事件也就触发不了,最好的解决办法就是当输入这些信息的时候让整个屏幕上移一个键盘的位置,或者上移到指定的位置. 首先一般输入的话都用的是UITextField,所以要监听用户什么时候开始输入和什么时候结束输入,直接设置代理代理就行了,要遵受 UITextFieldDelegate协议. //遵循协议 @interface Vi

  • Web开发中客户端的跳转与服务器端的跳转的区别

    客户端的跳转:跳转之后地址栏的信息是会变的,变为跳转之后的地址信息 例如:response.sendRedirect(); 服务器端的跳转:跳转之后的地址栏的信息不会发生任何的改变 例如:<jsp:forword> request.getRequestDisPather("").forword(request, response); (1).而且在使用request属性范围时,只有服务器端跳转才能将request范围的属性保存到跳转页面:而如果是客户端的跳转,则无法进行re

  • jsp和servlet中实现页面跳转的方式实例总结

    本文实例总结了jsp和servlet中实现页面跳转的方式.分享给大家供大家参考,具体如下: 假设要求从test1.jsp 跳转到test2.jsp 一. jsp中跳转: 1. 使用RequestDispatcher.forward方法转发 <% RequestDispatcher rd = getServletContext().getRequestDispatcher("/test/test2.jsp"); rd.forward(request, response); %>

  • 浅谈Springmvc中的页面跳转问题

    SpringMvc跳转问题 SpringMvc的Controller每次处理完数据后都会返回一个逻辑视图(view)和模型(model) 所以我们会看到原生的Controller是返回一个ModelAndView(内部包含了view和model). 正常情况下(除非被@ModelAttribute注解了的方法),否则最终都会返回ModelAndView. 当然有时候一个功能处理方法不一定要返回一个逻辑视图,也可以重定向到另一个功能方法 服务器内部转发到一个逻辑视图或者另一个功能方法. --- S

  • Java 在PDF中添加页面跳转按钮功能(代码演示)

    在PDF 中可通过按钮来添加动作跳转到指定页面,包括跳转到文档首页.文档末页.跳转到上一页.下一页.或跳转到指定页面等.下面将通过java代码来演示如何添加具有以上几种功能的按钮. 使用工具: Free Spire.PDF for Java (免费版) IntelliJ IDEA Jar文件获取及导入: 方法1:通过官网下载jar文件包.下载后,解压文件,并将lib文件夹下的Spire.Pdf.jar文件导入java程序.参考如下导入效果: 方法2: 可通过maven仓库安装导入. Java 代

随机推荐