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];
    }
  • 相关阅读:
    ASP 禁止页面被缓存
    关于学习编程的一点想法
    今天下午做的一个关于web前端性能/性能测试的Talk
    错误植入法与老祖宗的智慧
    关闭sitwithwhom.51.net
    让Pywinauto支持中文菜单
    勤学与好问
    LoadRunner 的 web_set_user 函数
    有奖调查——《软件性能测试过程详解与案例剖析》第二版内容调查
    论“响应时间”
  • 原文地址:https://www.cnblogs.com/davidgu/p/3557126.html
Copyright © 2011-2022 走看看