push自定义动画

//

//  ViewController.m

//  ViewControllerAnimation

//

//  Created by mac on 15/5/26.

//  Copyright (c) 2015年 BSY. All rights reserved.

//

#import "ViewController.h"

#import "TwoViewController.h"

@interface ViewController ()<UINavigationControllerDelegate,UIViewControllerTransitioningDelegate>

@property(nonatomic,strong)TwoViewController*two;

@property(nonatomic,strong)UIViewController *currentViewController;;

@end

@implementation ViewController

- (void)viewDidLoad {

    [super viewDidLoad];

    

    self.title = @"第一页";

    self.view.backgroundColor = [UIColor grayColor];

    self.Animator = [[BSYAnimator alloc]init];

    self.TransitionAnimator = [[BSYTransitionAnimator alloc]init];

    

    UIButton *button  = [UIButton buttonWithType: UIButtonTypeCustom];

    [button setFrame:CGRectMake(100, 100, 100, 100)];

    [button setTitle:@"Push" forState:UIControlStateNormal];

    [button setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];

    [self.view addSubview:button];

    [button addTarget:self action:@selector(buttonClick) forControlEvents:UIControlEventTouchUpInside];

    TwoViewController *two = [[TwoViewController alloc]init];

    self.two = two;

    self.navigationController.delegate = self;

    two.transitioningDelegate = self;

    two.modalPresentationStyle = UIModalPresentationCustom;

    

    [self addChildViewController:two];

    self.currentViewController = two;

}

-(void)buttonClick

{

    [self.navigationController pushViewController:self.two animated:YES];

}

#pragma mark - UINavigationControllerDelegate iOS7新增的2个方法

// 动画特效

- (id<UIViewControllerAnimatedTransitioning>) navigationController:(UINavigationController *)navigationController animationControllerForOperation:(UINavigationControllerOperation)operation fromViewController:(UIViewController *)fromVC toViewController:(UIViewController *)toVC

{

    

    if (operation == UINavigationControllerOperationPush) {

        return self.Animator;

    }else{

        return nil;

    }

}

#pragma mark - Transitioning Delegate (Modal)

-(id<UIViewControllerAnimatedTransitioning>)animationControllerForPresentedController:(UIViewController *)presented presentingController:(UIViewController *)presenting sourceController:(UIViewController *)source

{

    self.TransitionAnimator.animationType = AnimationTypePresent;

    return self.TransitionAnimator;

}

-(id<UIViewControllerAnimatedTransitioning>)animationControllerForDismissedController:(UIViewController *)dismissed

{

    self.TransitionAnimator.animationType = AnimationTypeDismiss;

    return self.TransitionAnimator;

}

@end

时间: 2024-10-06 02:20:00

push自定义动画的相关文章

iOS7 自定义动画跳转

简介 在iOS7系统中,如果你使用短信或者appStore苹果原生的工具的时候会发现这么一个细节.UINavigationViewController中界面的Push不再是像iOS6的旧界面左移,新的界面直接右侧滑入,而是新的视图是从右侧滑入并且盖在了之前视图控制器之上,还可以通过手势在界面左侧边界滑动来跳转到之前的界面.如图1.1,1.2. 图1.1                                          图1.2 不知道你是否已经看出两幅图之间的区别.有一个好的消息

Animate自定义动画

在jQuery中出了基本的动画之外,还有用户 可以自定义的函数,Animate() 用于创建自定义动画的函数. apI上指出: 这个函数的关键在于指定动画形式及结果样式属性对象.这个对象中每个属性都表示一个可以变化的样式属性(如“height”.“top”或“opacity”).注意:所有指定的属性必须用骆驼形式,比如用marginLeft代替margin-left. 而每个属性的值表示这个样式属性到多少时动画结束.如果是一个数值,样式属性就会从当前的值渐变到指定的值.如果使用的是“hide”.

自定义动画css属性

自定义动画: 1.animation-name(自定义动画名称) 元素所应用的动画名称,必须与@keyframes使用,名称由@keyframes定义. keyframes(动画关键帧):以@keyframes开头,其中{}所写入的是不同时间段的样式规则. <style type="text/css"> .div { width: 100px; height: 100px; background: blue; animation-name: lefttoright; } @

创建Material Design风格的Android应用--使用自定义动画

动画在Material Design设计中给用户反馈放用户点击时,并且在程序用户界面中提供连贯的视觉.Material主题为按钮(Button)和activity的转换提供了一些默认的动画,在android5.0(api 21)和更高的版本,你可以自定义这些动画和创建一个新动画: Touch feedback(触摸反馈) Circular Reveal(循环揭露效果) Activity transitions(Activity转换效果) Curved motion(曲线运动) View stat

09.11 jquery04 效果 基本 滑动滑出 淡入淡出 自定义动画 动画操作 工具 浏览器 对象和属性操作核心

# 效果 ### 基本 (width/height/opacity) * show() * hide() * toggle() ### 滑动滑出 (height) * slideUp()       隐藏 * slideDown()  显示 * slideToggle() ### 淡入淡出 * fadeOut()    隐藏 * fadeIn()      显示 * fadeToggle() * fadeTo() 不占用位置 消失之后后面的自动向上移动 ### 自定义动画 * animate(p

jQuery自定义动画

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>jQuery自定义动画</title> <script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> <script

CSS3初学篇章_6(自定义动画)

自定义动画 由于有一部分低版本的浏览器并不支持的问题,所以这个样式要多做兼容,各大浏览器兼容前缀如下: 前缀 浏览器  -webkit  chrome和safari  -moz  firefox  -ms  IE  -o  opera 1. animation-name(动画名称):语法:animation-name :none | <identifier> 说明:元素所应用的动画 名称,必须与规则@keyframes配合使用,因为动画名称由@keyframes定义 div{ animatio

Android Material Design-Defining Custom Animations(自定义动画)-(六)

用户跟你的app进行交互时,material design中的动画给予用户动作的反馈和提供视觉的一致性(感受).Material主题提供了一些默认的按钮和activity过渡的动画效果,而在 Android 5.0(API级别21)或以上的系统版本中你可以自定义这些动画,还可以创建新的动画: l  Touch feedback(触摸反馈) l  Circular Reveal(循环显示) l  Activity transitions(Activity过渡) l  Curved motion(曲

Jq自定义动画

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" ><head> <title></title> <scr