【 Beginning iOS 7 Development《精通iOS7开发》】06 Multiview Applications

一、典型多视图应用

1、TAB BAR。

2、NAVIGATION BAR

3、TAB+NAVIGATION

4、TOOL BAR

二、新建一个多视图APP

1、APP效果演示

2、项目结构

//
//  BIDSwitchViewController.m
//  View Switcher
//
//  Created by jason on 14-7-17.
//  Copyright (c) 2014年 jason. All rights reserved.
//

#import "BIDSwitchViewController.h"

@interface BIDSwitchViewController ()

@end

@implementation BIDSwitchViewController

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
    }
    return self;
}

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    self.blueViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"Blue"];
    [self.view insertSubview:self.blueViewController.view atIndex:0];
}

- (void)didReceiveMemoryWarning
{
//    回收两个子视图
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
    if (!self.blueViewController.view.superview) {
        self.blueViewController = nil;
    }else{
        self.yellowViewController = nil;
    }
}

/*
#pragma mark - Navigation

// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    // Get the new view controller using [segue destinationViewController].
    // Pass the selected object to the new view controller.
}
*/

//切换逻辑、切换动画
-(IBAction)switchViews:(id)sender
{
    [UIView beginAnimations:@"View Flip" context:NULL];
    [UIView setAnimationDuration:0.4];
    [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
    if (!self.yellowViewController.view.superview) {
        if (!self.yellowViewController) {
            self.yellowViewController = [self.storyboard
                                         instantiateViewControllerWithIdentifier:@"Yellow"];
        }
        [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight
                               forView:self.view cache:YES];
        [self.blueViewController.view removeFromSuperview];
        [self.view insertSubview:self.yellowViewController.view atIndex:0];
    }else{
        if (!self.blueViewController) {
            self.blueViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"Blue"];
            }
        [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft
                               forView:self.view cache:YES];
        [self.yellowViewController.view removeFromSuperview];
        [self.view insertSubview:self.blueViewController.view atIndex:0];
    }
    [UIView commitAnimations];
}

@end

3、代码下载:

        https://github.com/Simba-Hu/View-Switcher.git

        git@github.com:Simba-Hu/View-Switcher.git


三、小结

View Controller 

Storyboard 

UIViewController 

Empty Application 

Toolbar 

the object attributes inspector

 control-drag 

 App Delegate 

Show Quick Help Inspector 

lazy loading,

superview 

Content Views 

Main.storyboard

Interface Builder

the object library 

scene 

Editor - Align- Horizontal
Center inContainer  

Editor- Align- VerticalCenter
in Container 

the connections inspector 

Touch Up Insideevent  

File’sOwnericon 

background 

the attributes inspector  

the identity inspector  

the color picker 

constraints 

Transition 

时间: 2024-10-02 14:01:27

【 Beginning iOS 7 Development《精通iOS7开发》】06 Multiview Applications的相关文章

【 Beginning iOS 7 Development《精通iOS7开发》】01 Xcode创建项目helloworld [及资料下载]

1.右击Xcode顶部操作栏的任意处,弹出下拉列表,显示三个选项icon and text.text ONLY 和 hide toolbar,作为初学者选择第一项icon and text,这样的好处在于文字加按钮图标更好的指导某个操作是干什么的,其二是因为教科书描述的操作是以文字来的,图文并茂的比较少,比如"scheme"在很多书中都提到,但是直到启动上述选项之前,我还是没有指导这个按钮所在. 2.在编辑action和outlet的时候:单击Main.storyboard文件,在代码

【 Beginning iOS 7 Development《精通iOS7开发》】05 Autorotation and Autosizing

一.旋转后相对位置不变 二.旋转后相对位置变化  2.1默认:  2.2调整后 三.小结  3.1 在APP级别设置支持哪些方向:  3.2 在viewController(xlib)级别设置支持哪些方向:    #import "JAViewController.h" @interface JAViewController () @end @implementation JAViewController - (void)viewDidLoad { [super viewDidLoad

[译] 一名 iOS 开发者的 React Native 开发经历

本文讲的是[译] 一名 iOS 开发者的 React Native 开发经历, 原文地址:An iOS Dev's Experience with React Native 原文作者:本文已获原作者 John Scalo 授权 译文出自:掘金翻译计划 译者:lsvih 校对者:1992chenlu,avocadowang 一名 iOS 开发者的 React Native 开发经历 如果你是一名 iOS 开发者,你应该听说过 React Native.它给出了简单而吸引人的承诺:一次编写,两处部署

iOS视频功能模块的开发

iOS视频功能模块的开发 一.使用MPMoviePlayerController进行视频播放         MPMoviePlayerController是iOS中进行视频播放开发的一个控制类,里面涵盖了视频播放中大部分的需求功能,在使用这个框架时,需要导入头文件<MediaPlayer/MediaPlayer.h>. 1.初始化方法         MPMoviePlayerController可以播放网络视频,也可以播放本地视频,通过不同的URL来进行初始化,例如本地视频的初始化如下:

Solidworks二次开发—06—在装配体中添加配合

Solidworks二次开发-06-在装配体中添加配合     折腾了三天终于完成了计划中的功能模块.在一个装配体中自动判断插入合适的零件,并添加配合. 在前面几篇文章中我已经基本上说明了如何得到零部件的数据信息.如何插入零部件.如何得到已经选择的特征等. 下面只介绍怎样进行配合 在做配合时,需要经常选择到零件的面.线等,这是一个问题,还有就是介绍一下addmate2函数的使用: 一般进行配合我们按照下面的次序来进行:     1-ModelDoc.ClearSelection2  '取消所有选

iOS 6苹果地图应用开发

在iOS 6之后,不再使用谷歌地图了,而是使用苹果自己的地图,但是API编程接口没有太大的变化.开发人员不需要再学习很多新东西就能开发地图应用,这是负责任的做法.因此本节介绍的内容也同样适用于iOS5上运行地图应用开发. iOS应用程序中使用Map Kit API开发地图应用程序. 其核心是MKMapView类使用.我们可以设置地图显示方式.控制地图,可以在地图上添加标注. 显示地图 在Map Kit API中显示地图的视图是MKMapView,它的委托协议是MKMapViewDelegate.

为什么添加认证里无法选择ios app development ?

问题描述 为什么添加认证里无法选择ios app development ? ios app development 和App Store and Ad Hoc 这两个选项都不能选 解决方案 你有没有apple开发者账户?在申请ios开发者证书前需要开发者账户. 解决方案二: 你看一下,已经申请过几个development和App Store and Ad Hoc(distribution)证书了,这两种证书的数量上限,都是两个,如果超过这个数目,就只能删掉原来的,才能申请新的.

iOS 系统自带分享开发

问题描述 iOS 系统自带分享开发 在系统的照片应用中的分享按钮可以弹出整个手机里面app提供的share扩展和action扩展 我想知道如何在自己的app中点击按钮让用户选择其中一个系统提供的分享扩展.这是如何实现的... 解决方案 iOS - 系统自带的分享功能IOS系统自带社交分享ios 调用系统自带分享 解决方案二: http://www.jb51.net/article/74298.htm

《iOS和tvOS 2D游戏开发教程》——第1章,第1.1节开始

第1章 精灵 iOS和tvOS 2D游戏开发教程 Ray Wenderlich撰写 既然你已经知道了什么是Sprite Kit以及为什么要使用它,现在我们来自己尝试一下.我们将要构建的第一款小游戏叫做Zombie Conga,其完成后的样子如图1-1所示. 图1-1 在Zombie Conga中,你负责扮演无忧无虑的.只是想参加舞会的僵尸.好在,僵尸所占据的海边小镇有足够多的小猫.你只需要咬住这些小猫,它们就会加入到僵尸的舞队中来. 不过要小心疯狂的猫女士!这些身穿红色的衣服的老太太,对于想要偷