我有一个uiimageview的子类,其中有一个按钮作为子视图。我添加了捏合手势以在uiimageview上应用缩放仿射变换,但是我不希望按钮(子视图)也被缩放。无论如何要从转换中排除按钮?据我所知,转换会相应地转换视图内的所有内容及其所有子视图。
答案 0 :(得分:2)
攻击它的一种方法是向UIView添加一个类别,以便在将转换*的逆应用于所有子视图时将转换应用于self。
* CGAffineTransformInvert会做你想要的。
答案 1 :(得分:1)
更改视图的视图层次,而不是让buttons
作为uiimageview的子项,创建父UIView
并添加UIImageView
和{{1} }
您的新层次结构将是这样的
UIButton
UIButton将是UIImageView的兄弟,而不是它的孩子,现在你可以应用UIView -> UIImageView
-> UIButton
的任何转换,它不会影响UIImageView
答案 2 :(得分:1)
将转换应用于视图层
view.layer.transform = ...