1. 源代码下载链接:01-modal.zip
    37.8 KB
  2. // MJAppDelegate.h

  3. //
  4. //  MJAppDelegate.h
  5. //  01-modal
  6. //
  7. //  Created by apple on 13-12-11.
  8. //  Copyright (c) 2013年itcast. All rights reserved.
  9. //
  10. #import<UIKit/UIKit.h>
  11. @interfaceMJAppDelegate : UIResponder <UIApplicationDelegate>
  12. @property(strong,nonatomic) UIWindow *window;
  13. @end
  14. // MJAppDelegate.m

    Map

  15. //
  16. //  MJAppDelegate.m
  17. //  01-modal
  18. //
  19. //  Created by apple on 13-12-11.
  20. //  Copyright (c) 2013年itcast. All rights reserved.
  21. //
  22. #import"MJAppDelegate.h"
  23. #import"MJOneViewController.h"
  24. @implementationMJAppDelegate
  25. - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
  26. {
  27.    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
  28.    
  29.    self.window.rootViewController = [[MJOneViewController alloc] init];
  30.    
  31.     [self.window makeKeyAndVisible];
  32.    returnYES;
  33. }
  34. - (void)applicationWillResignActive:(UIApplication *)application
  35. {
  36.    // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
  37.    // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
  38. }
  39. - (void)applicationDidEnterBackground:(UIApplication *)application
  40. {
  41.    // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
  42.    // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
  43. }
  44. - (void)applicationWillEnterForeground:(UIApplication *)application
  45. {
  46.    // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.
  47. }
  48. - (void)applicationDidBecomeActive:(UIApplication *)application
  49. {
  50.    // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
  51. }
  52. - (void)applicationWillTerminate:(UIApplication *)application
  53. {
  54.    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
  55. }
  56. @end
  57. // MJOneViewController.h

    Map

  58. //
  59. //  MJOneViewController.h
  60. //  01-modal
  61. //
  62. //  Created by apple on 13-12-11.
  63. //  Copyright (c) 2013年itcast. All rights reserved.
  64. //
  65. #import<UIKit/UIKit.h>
  66. @interfaceMJOneViewController : UIViewController
  67. - (IBAction)jump2;
  68. @end
  69. // MJOneViewController.m

    Map

  70. //
  71. //  MJOneViewController.m
  72. //  01-modal
  73. //
  74. //  Created by apple on 13-12-11.
  75. //  Copyright (c) 2013年itcast. All rights reserved.
  76. //
  77. #import"MJOneViewController.h"
  78. #import"MJTwoViewController.h"
  79. #import"MJThreeViewController.h"
  80. @interfaceMJOneViewController ()
  81. @end
  82. @implementationMJOneViewController
  83. //- (IBAction)jump2 {
  84. //    MJTwoViewController *two = [[MJTwoViewController alloc] init];
  85. //   
  86. //    // modalTransitionStyle设置模态控制器展示的形式
  87. //    /*
  88. //     UIModalTransitionStyleCoverVertical = 0, 垂直覆盖(从底部钻上来)
  89. //     UIModalTransitionStyleFlipHorizontal, 水平翻转
  90. //     UIModalTransitionStyleCrossDissolve,  淡入淡出
  91. //     UIModalTransitionStylePartialCurl     翻页(展示部分界面)
  92. //     */
  93. ////    two.modalTransitionStyle = UIModalTransitionStylePartialCurl;
  94. ////本文永久链接,转载请注明出处:http://www.cnblogs.com/ChenYilong/p/3490807.html   
  95. //    //以modal形式展示其他控制器(模态窗口)
  96. //    [self presentViewController:two animated:YES completion:^{
  97. //        NSLog(@"----展示完毕");
  98. //    }];
  99. //}
  100. /*
  101.  给一个控制器顶部增加一个导航栏的最快方法:
  102.  1>给这个控制器包装一个导航控制器(UINavigationController)
  103.  */
  104. - (void)jump2
  105. {
  106.     MJThreeViewController *three = [[MJThreeViewController alloc] init];
  107.    
  108.     UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:three];
  109.    
  110.     nav.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
  111.    
  112.     NSLog(@"前:one = %p, window的子控件%@",self.view, [UIApplication sharedApplication].keyWindow.subviews);
  113.    
  114.     [selfpresentViewController:nav animated:YEScompletion:^{
  115.         NSLog(@"后:nav=%p, %@", nav.view, [UIApplication sharedApplication].keyWindow.subviews);
  116.     }];
  117. }
  118. @end
  119. // MJTwoViewController.h

    Map

  120. //
  121. //  MJTwoViewController.h
  122. //  01-modal
  123. //
  124. //  Created by apple on 13-12-11.
  125. //  Copyright (c) 2013年itcast. All rights reserved.
  126. //
  127. #import<UIKit/UIKit.h>
  128. @interfaceMJTwoViewController : UIViewController
  129. - (IBAction)cancel:(id)sender;
  130. @end
  131. // MJTwoViewController.m

    Map

  132. //
  133. //  MJTwoViewController.m
  134. //  01-modal
  135. //
  136. //  Created by apple on 13-12-11.
  137. //  Copyright (c) 2013年itcast. All rights reserved.
  138. //
  139. #import"MJTwoViewController.h"
  140. @interfaceMJTwoViewController ()
  141. @end
  142. @implementationMJTwoViewController
  143. - (void)viewDidLoad
  144. {
  145.     [superviewDidLoad];
  146.    
  147.     UIButton *btn = [UIButton buttonWithType:UIButtonTypeContactAdd];
  148.     btn.frame = CGRectMake(0,44,40,40);
  149.     [self.view addSubview:btn];
  150. }
  151. - (IBAction)cancel:(id)sender {
  152.    //关闭当前的模态控制器
  153.     [self dismissViewControllerAnimated:YES completion:nil];
  154. }
  155. @end
  156. // MJThreeViewController.h

    Map

  157. //
  158. //  MJThreeViewController.h
  159. //  01-modal
  160. //
  161. //  Created by apple on 13-12-11.
  162. //  Copyright (c) 2013年itcast. All rights reserved.
  163. //
  164. #import<UIKit/UIKit.h>
  165. @interface MJThreeViewController : UIViewController
  166. @end
  167. // MJThreeViewController.m

    Map

  168. //
  169. //  MJThreeViewController.m
  170. //  01-modal
  171. //
  172. //  Created by apple on 13-12-11.
  173. //  Copyright (c) 2013年itcast. All rights reserved.
  174. //
  175. #import"MJThreeViewController.h"
  176. @interface MJThreeViewController ()
  177. @end
  178. @implementationMJThreeViewController
  179. - (void)viewDidLoad
  180. {
  181.     [superviewDidLoad];
  182.    
  183.     UIView *abc = [[UIView alloc] init];
  184.     abc.frame = CGRectMake(0,0,100,100);
  185.     abc.backgroundColor = [UIColor yellowColor];
  186.     [self.view addSubview:abc];
  187.    //本文永久链接,转载请注明出处:http://www.cnblogs.com/ChenYilong/p/3490807.html
  188.    self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"取消"style:UIBarButtonItemStyleBordered target:selfaction:@selector(cancel)];
  189. }
  190. - (void)cancel
  191. {
  192.     [selfdismissViewControllerAnimated:YEScompletion:nil];
  193. }
  194. @end

01-modal Demo示例程序源代码的更多相关文章

  1. 03.WebView演练-iOS开发Demo(示例程序)源代码

    技术博客http://www.cnblogs.com/ChenYilong/   新浪微博http://weibo.com/luohanchenyilong   //转载请注明出处--本文永久链接:h ...

  2. iOS多线程 iOS开发Demo(示例程序)源代码

    本系列所有开发文档翻译链接地址:iOS7开发-Apple苹果iPhone开发Xcode官方文档翻译PDF下载地址(2013年12月29日更新版)   iOS程序源代码下载链接:01.大任务.zip22 ...

  3. 代理设计模式iOS开发Demo(示例程序)源代码

        iOS程序源代码下载链接:03-代理设计模式.zip28.3 KB // main.m // //  main.m //  03-代理设计模式 // //  Created by apple ...

  4. 01-QQ 3-最终重构版 Demo示例程序源代码

      源代码下载链接:01-QQ 3.zip292.5 KB // QQAppDelegate.h Map // //  QQAppDelegate.h //  01-QQ // //  Created ...

  5. 02-更改窗口的根控制器 Demo示例程序源代码

      源代码下载链接:02-更改窗口的根控制器.zip18.0 KB // MJAppDelegate.h // //  MJAppDelegate.h //  02-更改窗口的根控制器 // //  ...

  6. 归档普通对象Demo示例程序源代码

    源代码下载链接:06-归档普通对象.zip34.2 KB // MJPerson.h // //  MJPerson.h //  06-归档普通对象 // //  Created by apple o ...

  7. 01-导航实例-QQ空间Demo示例程序源代码

    01-导航实例-QQ空间.zip62.4 KB // MJLoginViewController.h Map // //  MJLoginViewController.h //  01-导航实例-QQ ...

  8. 12.13记录//QQDemo示例程序源代码

            笔记的完整版pdf文档下载地址: https://www.evernote.com/shard/s227/sh/ac692160-68c7-4149-83ea-0db5385e28b0 ...

  9. kafka_2.11-0.8.2.1+java 生产消费程序demo示例

      Kafka学习8_kafka java 生产消费程序demo示例 kafka是吞吐量巨大的一个消息系统,它是用scala写的,和普通的消息的生产消费还有所不同,写了个demo程序供大家参考.kaf ...

随机推荐

  1. Datetime与Datetime2的区别

    Datetime:        时间格式,对应于数据库中的DateTime类型,对应于.NET里面的System. DateTime类型.DateTime支持日期从1753年1月1日到9999年12 ...

  2. request.getparameter() 获取中文出现乱码 问题

    http请求是以ISO-8859-1的编码来传送url的 如果页面的content-type为utf-8,那么在发送请求时,会将字符转成utf-8后进行传送 如: 中 的UTF-8编码为:E4 B8 ...

  3. webpack loader之css、scss、less、stylus安装

    1.打包css,需要安装css-loader和style-loader yarn add --dev css-loader style-loader 或者 npm install --save-dev ...

  4. 剑指offer-矩形覆盖10

    题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形.请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? # -*- coding:utf-8 -*- class S ...

  5. Leetcode 675.为高尔夫比赛砍树

    为高尔夫比赛砍树 你被请来给一个要举办高尔夫比赛的树林砍树. 树林由一个非负的二维数组表示, 在这个数组中: 0 表示障碍,无法触碰到. 1 表示可以行走的地面. 比1大的数 表示一颗允许走过的树的高 ...

  6. static 关键字解析(转)

    static关键字解析   Java中的static关键字解析 static关键字是很多朋友在编写代码和阅读代码时碰到的比较难以理解的一个关键字,也是各大公司的面试官喜欢在面试时问到的知识点之一.下面 ...

  7. Liz问题账户分析系统

    1.理解liz工作情况,了解liz的问题,具有同理心.设想软件应该达成的目标,解决哪些业务. 第一步:就是从系统角度来理解软件,确定对所开发系统的综合要求,并提出这些需求的实现条件,以及需求应该达到的 ...

  8. c# 自动关机代码

    #region 关机代码 //C#关机代码 // 这个结构体将会传递给API.使用StructLayout //(...特性,确保其中的成员是按顺序排列的,C#编译器不会对其进行调整. [Struct ...

  9. APP与智能手表是如何通信的【本文摘抄自深圳尚锐科技】

    APP与智能手表是如何通信的 1. Android 与服务器的通信方式主要有两种,一种是http 通信 ,一种是socket 通信. 两者的最大差异在于,http连接使用的是“请求—响应方式”,即在请 ...

  10. epc笔记

    http://wenku.baidu.com/view/5e921520dd36a32d7375812a.html 1.  先注册, EPC注册EPS业务或non-EPS服务 ?? HSS做什么? 2 ...