transitionFromView方法的使用
transitionFromView方法的使用

效果

源码
//
// ViewController.m
// TransitionFromView
//
// Created by YouXianMing on 16/5/30.
// Copyright © 2016年 YouXianMing. All rights reserved.
// #import "ViewController.h" typedef enum : NSUInteger { kBottomView = ,
kTopView, } EViewControllerTag; @interface ViewController () { UIView *redView;
UIView *yellowView;
UIView *containerView;
} @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; // ContainerView
containerView = [[UIView alloc] initWithFrame:CGRectMake(, , , )];
containerView.center = self.view.center;
[self.view addSubview:containerView]; // BottomView
redView = [[UIView alloc] initWithFrame:containerView.bounds];
redView.tag = kBottomView;
redView.backgroundColor = [UIColor redColor];
[containerView addSubview:redView]; // TopView
yellowView = [[UIView alloc] initWithFrame:containerView.bounds];
yellowView.tag = kTopView;
yellowView.backgroundColor = [UIColor yellowColor];
[containerView addSubview:yellowView]; // Button
UIButton *button = [[UIButton alloc] initWithFrame:self.view.bounds];
[button addTarget:self action:@selector(buttonEvent:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:button];
} - (void)buttonEvent:(UIButton *)button { button.enabled = NO; [UIView transitionFromView:[containerView viewWithTag:kTopView]
toView:[containerView viewWithTag:kBottomView]
duration:0.5f
options:UIViewAnimationOptionTransitionFlipFromLeft
completion:^(BOOL finished) { button.enabled = YES; if ([[containerView viewWithTag:kBottomView] isEqual:redView]) { [containerView insertSubview:yellowView belowSubview:redView];
redView.tag = kTopView;
yellowView.tag = kBottomView; } else { [containerView insertSubview:redView belowSubview:yellowView];
redView.tag = kBottomView;
yellowView.tag = kTopView;
}
}];
} @end
细节

transitionFromView方法的使用的更多相关文章
- UIView 的transitionFromView方法实现视图切换
#import "ViewController.h" @interface ViewController () @property (strong, nonatomic) IBOu ...
- iOS UIKit:animation
@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css); @import url(/ ...
- javaSE27天复习总结
JAVA学习总结 2 第一天 2 1:计算机概述(了解) 2 (1)计算机 2 (2)计算机硬件 2 (3)计算机软件 2 (4)软件开发(理解) 2 (5) ...
- UIView属性及方法
@property(nonatomic) CGFloat alpha //设置视图的透明度 //透明度的设置从最小0.0到1.0 ,1.0为完全不透明, //其中这个属性只影响当前视图,并不会影响其子 ...
- iOS开发UUIView动画方法总结
#动画设置 UIView动画实现 @interface ViewController () @property (weak, nonatomic) IBOutlet UIView *myView; @ ...
- UIView封装动画--iOS利用系统提供方法来做转场动画
UIView封装动画--iOS利用系统提供方法来做转场动画 UIViewAnimationOptions option; if (isNext) { option=UIViewAnimationOpt ...
- mapreduce多文件输出的两方法
mapreduce多文件输出的两方法 package duogemap; import java.io.IOException; import org.apache.hadoop.conf ...
- 【.net 深呼吸】细说CodeDom(6):方法参数
本文老周就给大伙伴们介绍一下方法参数代码的生成. 在开始之前,先补充一下上一篇烂文的内容.在上一篇文章中,老周检讨了 MemberAttributes 枚举的用法,老周此前误以为该枚举不能进行按位操作 ...
- IE6、7下html标签间存在空白符,导致渲染后占用多余空白位置的原因及解决方法
直接上图:原因:该div包含的内容是靠后台进行print操作,输出的.如果没有输出任何内容,浏览器会默认给该空白区域添加空白符.在IE6.7下,浏览器解析渲染时,会认为空白符也是占位置的,默认其具有字 ...
随机推荐
- PHP科学计数法转换成数字
/** * 科学计数法转换成数字 * @param $num * @param int $double * @return int */ function sctonum($num, $double ...
- react 的JSX语法需要注意哪些点?
注释方式 ReactDOM.render( <div> {/*JSX 中的注释方式*/} </div>, document.getElementById('root') ) j ...
- Java 日期时间获取和显示
Java正确获取星期Calendar.DAY_OF_WEEKhttp://chamcon.iteye.com/blog/2144433 Java SimpleDateFormat 中英文时间格式化转换 ...
- 打造一款便携版的Sublime Text
https://segmentfault.com/a/1190000000707661 https://www.cnblogs.com/52cik/p/sublime-diy.html 直接安装Sub ...
- Serilog 记录日志
Serilog 记录日志 Serilog是.net里面非常不错的记录日志的库,另外一个我认为比较好的Log库是NLog. 在我个人的asp.net web api 2 基础框架(Github地址)里, ...
- Xcode6.1 模拟器路径
Xcode 5的iOS模拟器的应用的目录是在~/Library/Application Support/iPhone Simulator/<iOS_Version>/Application ...
- spring+springmvc+hibernate 礼品管理系统
spring+springmvc+hibernate template礼品管理系统 1.简单介绍 如标题所示,这篇文章简单写了一个基于spring+springmvc+hibernate templa ...
- linux环境下source vimrc提示错误unexpected token `"autocmd"'
编辑完vimrc之后,使用source /etc/vimrc之后报错: $ source /etc/vimrc bash: /etc/vimrc: line 15: syntax error near ...
- 4951: [Wf2017]Money for Nothing 决策单调性 分治
Bzoj4951:决策单调性 分治 国际惯例题面:一句话题面:供应商出货日期为Ei,售价为Pi:用户收购截止日期为Si,收购价格为Gi.我们要求max((Si-Ej)*(Gi-Pj)).显然如果我们把 ...
- KVM源代码解读:linux-3.17.4\include\uapi\linux\kvm.h
#ifndef __LINUX_KVM_H #define __LINUX_KVM_H /* * Userspace interface for /dev/kvm - kernel based vir ...