zoukankan      html  css  js  c++  java
  • IOS 7 Study

    Problem
    You would like to allow your users to move from one view controller to the other with
    a smooth and built-in animation.


    Solution
    Use an instance of UINavigationController.

    What it's like

    If you’ve used an iPhone, iPod Touch, or iPad before, chances are that you have already
    seen a navigation controller in action. For instance, if you go to the Settings app on your
    phone and then press an option such as Wallpaper (see follow)

     1. Add UINavigationController property in app delegate implementation

    #import "AppDelegate.h"
    #import "FirstViewController.h"
    
    @interface AppDelegate ()
    
    @property (nonatomic, strong) UINavigationController *navigationController;
    
    @end
    
    @implementation AppDelegate
    
    ...

    2. Initialize our navigation controller using its initWithRootViewController: method and pass our root view controller as its parameter.

        Then we will set the navigation controller as the root view controller of our window.

    - (BOOL) application:(UIApplication *)application
    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
        FirstViewController *viewController = [[FirstViewController alloc]
                                                initWithNibName:nil
                                                bundle:nil];
        self.navigationController = [[UINavigationController alloc]
                                     initWithRootViewController:viewController];
        self.window = [[UIWindow alloc]
                       initWithFrame:[[UIScreen mainScreen] bounds]];
        self.window.rootViewController = self.navigationController;
        self.window.backgroundColor = [UIColor whiteColor];
    
    [self.window makeKeyAndVisible];
    return YES; }

    3. FirstViewController implementation

    #import "FirstViewController.h"
    #import "SecondViewController.h"
    
    @interface FirstViewController ()
    
    @property (nonatomic, strong) UIButton *displaySecondViewController;
    
    @end
    
    @implementation FirstViewController
    
    - (void) performDisplaySecondViewController:(id)paramSender {
        SecondViewController *secondController = [[SecondViewController alloc]
                                                    initWithNibName:nil
                                                    bundle:NULL];
    
        [self.navigationController pushViewController:secondController animated:YES];
    }
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        self.title = @"First Controller";
        self.displaySecondViewController = [UIButton buttonWithType:UIButtonTypeSystem];
        [self.displaySecondViewController
            setTitle:@"Display Second View Controller"
            forState:UIControlStateNormal];
        [self.displaySecondViewController sizeToFit];
        self.displaySecondViewController.center = self.view.center;
        [self.displaySecondViewController
            addTarget:self
            action:@selector(performDisplaySecondViewController:)
            forControlEvents:UIControlEventTouchUpInside];
        [self.view addSubview:self.displaySecondViewController];
    }
    
    @end

    4. create this second view controller, without a .xib file

    #import "SecondViewController.h"
    
    @implementation SecondViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        self.title = @"Second Controller";
    }
    
    - (void) goBack {
        [self.navigationController popViewControllerAnimated:YES];
    }
    
    - (void) viewDidAppear:(BOOL)paramAnimated {
        [super viewDidAppear:paramAnimated];
        [self performSelector:@selector(goBack)
            withObject:nil
            afterDelay:5.0f];
    }
  • 相关阅读:
    vim 一些操作
    RedisTemplate 获取过期时间的问题
    SpringBoot 配置 Redis 多缓存名(不同缓存名缓存失效时间不同)
    Vue ElementUI Tree组件 回显问题(设置选择父级时会全选所有的子级,有此业务场景是不适合的)
    动态切换数据库源码解析
    @Primary 注解的作用
    @Value注解的使用
    Shiro&Jwt验证
    浏览器缓存和Service Worker
    Javascript的事件模型和Promise实现
  • 原文地址:https://www.cnblogs.com/davidgu/p/3557126.html
Copyright © 2011-2022 走看看