预备知识:

1.页面切换:

从一个ViewController切换到另一个ViewController有下面几种方法:

(1)self.view addSubview:(加载的新页面);
     相应的 [self.view removeFromSuperview];可以回到起始页面
(2)self.view insertSubview:(加载的新页面) atIndex:n;
对n的解释:页面都是层次叠加的,n表示加载到那一层上面
(3) self presentModalViewController:(加载的新页面)  animated:

2.UI动画移动原理:

定义一个起始位置和一个终止位置,使用CGPoint对象来代表,然后定义一个动画,最后提交这个动画,使之在应用运行的状态下实现动画效果。

3.代码:

//

//  MoveViewController.h

//  ImageView

//

//  Created by zhang xujun on 13-9-9.

//  Copyright (c) 2013年 zhang xujun. All rights reserved.

//

#import <UIKit/UIKit.h>

@interface MoveViewController : UIViewController

@property (strong,nonatomic) IBOutletUIButton *returnSuperView;

@property (strong,nonatomic) IBOutletUIButton *moveImage;

@property (strong,nonatomic) IBOutletUIImageView *moveImageView;

-(IBAction)returnSuperViewButton:(id)sender;

-(IBAction)move:(id)sender;

@end


//
// MoveViewController.m
// ImageView
//
// Created by zhang xujun on 13-9-9.
// Copyright (c) 2013年 zhang xujun. All rights reserved.
// #import "MoveViewController.h" @interface MoveViewController () @end @implementation MoveViewController
@synthesize returnSuperView;
@synthesize moveImage;
@synthesize moveImageView;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) { }
return self;
} - (void)viewDidLoad
{
[super viewDidLoad];
moveImageView.frame = CGRectMake(10.0, 10.0, 50.0, 40.0);
[self.moveImageView setImage:[UIImage imageNamed:@"卡片燃烧1.png"]];
[self.view addSubview:moveImageView]; }
-(void)returnSuperViewButton:(id)sender{ [self.view removeFromSuperview];
}
-(void)move:(id)sender{ [UIImageView beginAnimations:nil context:NULL];
[UIImageView setAnimationDuration:2];
[UIImageView setAnimationBeginsFromCurrentState:YES];
moveImageView.frame = CGRectMake(60.0, 100.0, 200.0, 160.0);
[UIImageView commitAnimations]; }
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning]; } @end

效果:

参考:

http://blog.sina.com.cn/s/blog_6700ebf201016ios.html

http://www.cnblogs.com/xingchen/archive/2011/08/15/2139771.html

【IOS实例小计】图像移动--可扩展为动态实现图标变化的更多相关文章

  1. 【IOS实例小计】今日开贴,记录我的ios学习生涯,留下点滴,留下快乐,成荫后人。

    今天开贴来记录自己的ios学习过程,本人目前小白一个,由于对ios感兴趣,所以开始学习,原职java程序,呵呵,勿喷. 本次的[ios实例小计]主要参考一文http://blog.sina.com.c ...

  2. 【IOS实例小计】UIImageView

    预备知识: UIImage 是一个专门存储图片数据的对象,默认兼容的图片格式是 PNG,可以通过文件.Quartz image对象或 image Data数据得到一个图片对象. UIImage相关功能 ...

  3. 【IOS实例小计】打开google地图-web

    -(void)openMaps:(id)sender{ NSString *addressText = @"1 Queen st, Auckland,NZ"; addressTex ...

  4. spring-data-jpa查询语句的书写实例小计

    //查询语句List<AuctionLot> alots = auctionLotRepository.findAllByAuctionIdAndAucIdIsNotNullAndIsOf ...

  5. sql小计汇总 rollup用法实例分析

    这里介绍sql server2005里面的一个使用实例: ),city ),score int) GO 1. 只有一个汇总 select province as 省,sum(score) as 分数 ...

  6. 实现对数据进行分组小计并计算合计的实例 asp.net

    可以通过数据绑定来实现  通过union all 来实现数据库 SELECT * FROM v3_pay_list2 where ( (ought_date >= '2012-12-06') a ...

  7. iOS 事件处理机制与图像渲染过程(转)

    iOS 事件处理机制与图像渲染过程 iOS RunLoop都干了什么 iOS 为什么必须在主线程中操作UI 事件响应 CALayer CADisplayLink 和 NSTimer iOS 渲染过程 ...

  8. iOS 事件处理机制与图像渲染过程

    Peter在开发公众号功能时触发了一个bug,导致群发错误.对此我们深表歉意,并果断开除了Peter.以下交回给正文时间: iOS 事件处理机制与图像渲染过程 iOS RunLoop都干了什么 iOS ...

  9. 用SQL实现统计报表中的"小计"与"合计"的方法详解

    本篇文章是对使用SQL实现统计报表中的"小计"与"合计"的方法进行了详细的分析介绍,需要的朋友参考下   客户提出需求,针对某一列分组加上小计,合计汇总.网上找 ...

随机推荐

  1. 转载python并行运算实例

    Python的并发处理能力臭名昭著.先撇开线程以及GIL方面的问题不说,我觉得多线程问题的根源不在技术上而在于理念.大部分关于Pyhon线程和多进程的资料虽然都很不错,但却过于细节.这些资料讲的都是虎 ...

  2. Mockito简介(转)

    Mockito 是目前 java 单测中使用比较流行的 mock 工具.其他还有 EasyMock,JMock,MockCreator,Mockrunner,MockMaker 及 PowerMock ...

  3. git教程1

    主要参考: 官方书籍: Pro Git 中文版:http://git.perlchina.org/book/zh 英文版:http://git.perlchina.org/book http://gi ...

  4. (step8.2.6)hdu 1848(Fibonacci again and again——组合博弈)

    题目大意:输入3个整数m,n,p,分别表示3堆石头中的石头个数 解题思路: 1)斐波那契数列的第16个数fib[16] == 1597 2)(sg[m]^sg[n]^sg[p])   .一定要加括号, ...

  5. 基于visual Studio2013解决C语言竞赛题之1008整除数

         题目 解决代码及点评 /************************************************************************/ ...

  6. Study notes for Sparse Coding

    Sparse Coding Sparse coding is a class of unsupervised methods for learning sets of over-complete ba ...

  7. mysql 安装过程中的错误:my-template.ini could not be processed and written to XXX\my.ini.Error code-1

    安装mysql的过程中,在最后配置mysql时,提示错误:Configuration file tmeplate E:\编程\MySQL\my-template.ini could not be pr ...

  8. em换算px

    一般浏览器默认的1em=16px,所以常用字体大小如下: 10px=0.625em 12px=0.75em 14px=0.875em 16px=1em 18px=1.125em 20px=1.25em ...

  9. JS图片上传后base64转码

    代码: // 获取文件流 var fileObj = document.getElementById('inputId').files; // 实例化一个FileReader对象 var reader ...

  10. WCF技术剖析之十三:序列化过程中的已知类型(Known Type)

    原文:WCF技术剖析之十三:序列化过程中的已知类型(Known Type) [爱心链接:拯救一个25岁身患急性白血病的女孩[内有苏州电视台经济频道<天天山海经>为此录制的节目视频(苏州话) ...