鏡射(Mirror)也有人稱做翻轉(Flip),可以呈現與原影像左右相反或是上相顛倒的影像,在 Core Graphic 中並沒有明確定義出翻轉或是鏡射的方法,但是我們能仍可以透過設定比例大小給予一個負數值來達到此效果,下列兩個函式就分別演示水平和垂直的翻轉效果。
- (IBAction)onFlipHorizontal:(id)sender { //水平
imageView.transform = CGAffineTransformScale(imageView.transform, 1.0, -1.0);
labelView.transform = CGAffineTransformScale(labelView.transform , 1.0, -1.0);
}
- (IBAction)onFlipVertical:(id)sender { //垂直
imageView.transform = CGAffineTransformScale(imageView.transform, -1.0, 1.0);
labelView.transform = CGAffineTransformScale(labelView.transform , -1.0, 1.0);
}
順道一題,本篇所示範的作法適用於所有 UIView 的子類別,也就是繼承 UIView 的 Subclass,當然 UILabel 也在此範圍中,上圖就是 UIImageView 與 UILabel 的鏡射效果。
沒有留言:
張貼留言