#import "ViewController.h"

@interface ViewController ()
@property (weak, nonatomic) IBOutlet UIImageView *imageV; @end @implementation ViewController - (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
} - (IBAction)moveUp:(id)sender {
//平移
[UIView animateWithDuration:0.5 animations:^{
//使用Make,它是相对于最原始的位置做的形变.不累加形变,且多次点击只形变一次
//self.imageV.transform = CGAffineTransformMakeTranslation(0, -100);
//相对于上一次做形变.初始值self.imageV.transform为0,多次点击,会自动在上一次形变的基础上做平移
self.imageV.transform = CGAffineTransformTranslate(self.imageV.transform, , -);
}]; }
- (IBAction)moveDown:(id)sender { //平移
[UIView animateWithDuration:0.5 animations:^{
//使用Make,它是相对于最原始的位置做的形变.
//self.imageV.transform = CGAffineTransformMakeTranslation(0, -100);
//相对于上一次做形变.
self.imageV.transform = CGAffineTransformTranslate(self.imageV.transform, , );
}];
} - (IBAction)rotation:(id)sender { [UIView animateWithDuration:0.5 animations:^{ //旋转(旋转的度数, 是一个弧度),M_PI_4,_下划线表示一个除号/
//self.imageV.transform = CGAffineTransformMakeRotation(M_PI_4); self.imageV.transform = CGAffineTransformRotate(self.imageV.transform, M_PI_4); }]; }
- (IBAction)scale:(id)sender { [UIView animateWithDuration:0.5 animations:^{ //缩放
//self.imageV.transform = CGAffineTransformMakeScale(0.5, 0.5);
self.imageV.transform = CGAffineTransformScale(self.imageV.transform, 0.8, 0.8); }]; } /**
* 总结: 1:平移:transform是结构体,定义一个transform:CGAffineTransform form //使用Make,它是相对于最原始的位置做的形变.不累加形变,且多次点击只形变一次
//self.imageV.transform = CGAffineTransformMakeTranslation(0, -100);
//相对于上一次做形变.初始值self.imageV.transform为0,多次点击,会自动在上一次形变的基础上做平移
self.imageV.transform = CGAffineTransformTranslate(self.imageV.transform, 0, -100); 2:旋转:
//旋转(旋转的度数, 是一个弧度),M_PI_4,_下划线表示一个除号/
//self.imageV.transform = CGAffineTransformMakeRotation(M_PI_4); self.imageV.transform = CGAffineTransformRotate(self.imageV.transform, M_PI_4); 3:缩放:
//缩放
//self.imageV.transform = CGAffineTransformMakeScale(0.5, 0.5);
self.imageV.transform = CGAffineTransformScale(self.imageV.transform, 0.8, 0.8); 4:清空形变属性:
CGAffineTransform form = CGAffineTransformIdentity;
self.imageV.transform = form; 5:1:在实际开发中,使用场景:1:当涉及一些frame的改变或是形变的时候可以用transform来取代frame 2:一般在实际开发中都是平移,旋转缩放混合使用。 */ @end

ios开发transform属性的更多相关文章

  1. iOS开发 -------- transform属性(形变)

      一 transform属性 在OC中,通过transform属性可以修改对象的平移,比例和旋转角度 常用的创建transform结构体的方法分两大类 (1) 创建"基于控件初始位置&qu ...

  2. Hello_IOS ios开发transform属性

    #import "ViewController.h" @interface ViewController () @property (weak, nonatomic) IBOutl ...

  3. iOS开发-automaticallyAdjustsScrollViewInsets属性

    iOS开发-automaticallyAdjustsScrollViewInsets属性 Available in iOS 7.0 and later. 简单点说就是automaticallyAdju ...

  4. iOS开发-获取属性和方法

    iOS开发数据存储有两种方式,属性列表和对象编码,属性列表可以通过NSArray,NSMutableArray,NSMutableDictionary,存储对象我们可以通过归档和解档来完成.如果我们想 ...

  5. iOS开发之--属性关键字以及set和get方法

    一.属性分为三大类 1.读写性控制 a.readOnly只读,只会生成get方法,不会生成set方法 b.readWrite可读可写,会生成set方法,也会生成get方法(默认设置) 2.setter ...

  6. iOS开发transform的使用

    // //  ViewController.m //  18-transform的使用 #import "ViewController.h" @interface ViewCont ...

  7. IOS学习5——属性与成员变量

    [转]iOS中属性与成员变量的区别 ios中属性修饰符的作用 1. 属性用property声明 2. 简而言之,对于目前的ios开发,属性和成员变量的区别,完全可以不管. 3. 这个是历史原因造成的. ...

  8. iOS开发基础篇-transform属性

    一. transform 属性 在OC中,通过 transform 属性可以修改对象的平移.缩放比例和旋转角度. 1)创建“基于控件初始位置”的形变  CGAffineTransformMakeRot ...

  9. iOS开发UI篇—transframe属性(形变)

    iOS开发UI篇—transframe属性(形变) 1. transform属性 在OC中,通过transform属性可以修改对象的平移.缩放比例和旋转角度 常用的创建transform结构体方法分两 ...

随机推荐

  1. 动态库dll使用module.def文件导出函数(像静态库一样使用)

    1.新建文件module.def. 2.动态库工程上右键->属性->链接器->输入->模块定义文件编辑它写入module.def 3.下面为module.def实例(smart ...

  2. mysql 压力测试之批量插入自增字段不连续问题

    Gaps in auto-increment values for “bulk inserts” With innodb_autoinc_lock_mode set to 0 (“traditiona ...

  3. react radio onchange事件点击无效

    记: 项目需求:   页面中radio默认选中        第一次进去页面   点击radio的时候不管怎样点击    都是选中 连onChange事件都没触发 进入页面  点击刷新   点击rad ...

  4. django遇到的那些古怪问题

    AssertionError: .accepted_renderer not set on Response 出错原因,没有在合法的方法内使用 response 响应,之前在dispatch内直接re ...

  5. 【MapReduce】经常使用计算模型具体解释

    前一阵子參加炼数成金的MapReduce培训,培训中的作业样例比較有代表性,用于解释问题再好只是了. 有一本国外的有关MR的教材,比較有用.点此下载. 一.MapReduce应用场景 MR能解决什么问 ...

  6. 字串乱序 PHP&JS

    <?php /** * 字串乱序 PHP&JS * * php 中把字串乱序后输出给客户机的 JAVASCRIPT , JAVASCRIPT 中恢复 * 在指定长度提取一个字符,并把这一 ...

  7. libcurl 通过http协议下载文件并显示下载进度

    vc6 测试工程下载地址:http://download.csdn.net/detail/mtour/8068053 代码如下: size_t my_write_func(void *ptr, siz ...

  8. Linux常用运维命令小结

    1. 空设备文件以及标准输入输出 /dev/null 表示空设备文件 0 表示stdin标准输入 1 表示stdout标准输出 2 表示stderr标准错误 2>&1 这里有两种解释:将 ...

  9. ORACLE10g R2【RAC+ASM→RAC+ASM】

    ORACLE10g R2[RAC+ASM→RAC+ASM] 本演示案例所用环境:RAC+ASM+OMF   primary standby OS Hostname node1,node2 dgnode ...

  10. stm32单片机下载方式

    引用   编辑:什么鱼 引用地址:http://www.eeworld.com.cn/mcu/2015/1012/article_22873.html 第一种 ISP下载: 这里类似51. boot1 ...