1. 程式人生 > >iOS UI——通過圖層layer設定 圖片的形變屬性(transform)

iOS UI——通過圖層layer設定 圖片的形變屬性(transform)

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{

    //通過uiview設定(2D效果)
//    self.iconView.transform=CGAffineTransformMakeTranslation(0, -100);
    //通過layer來設定(3D效果,x,y,z三個方向)
    self.iconView.layer.transform=CATransform3DMakeTranslation(100, 20, 0);
}

使用KVC進行設定

 //通過KVC來設定
    NSValue *v=[NSValue valueWithCATransform3D:CATransform3DMakeTranslation(100, 20, 0)];
    [self.iconView.layer setValue:v forKeyPath:@"transform"];
    //如果是隻需要設定在某一個方向上的移動,可以參考下面的程式碼
    //在x的方向上向左移動100
    [self.iconView.layer setValue:@(-100) forKeyPath:@"transform.translation.x"];

旋轉一個弧度
//旋轉
    self.iconView.layer.transform=CATransform3DMakeRotation(M_PI_4, 1, 1, 0.5);