你的位置:首页 > 操作系统

[操作系统]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 = 1000,  kTopView,  } EViewControllerTag;@interface ViewController () {  UIView *redView;  UIView *yellowView;  UIView *containerView;}@end@implementation ViewController- (void)viewDidLoad {    [super viewDidLoad];    // ContainerView  containerView     = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 200, 350)];  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

 

细节