我在UIView中有一个UIImageView(占用UIView的全部大小),而UIView本身就在另一个UIView中(占据了该视图空间的一小部分)。
在IB中,我为突出显示的状态设置了不同的图像,并为UIImageView,其父UIView及其祖父UIView设置了User Interaction Enabled。
然而,当我点击屏幕时,图像不会从未选择的图像变为所选图像。
答案 0 :(得分:3)
UImageViews不处理触摸事件。如果需要,您必须添加代码。最简单的方法是使用手势识别器。
如果您通过代码将图像视图的突出显示属性设置为YES,那么您应该看到突出显示的图像。
答案 1 :(得分:0)
在这种情况下:
private var switcher = true
private func createGesture() {
let tap = UITapGestureRecognizer(target: self, action: #selector(tappedImageView))
imageView.addGestureRecognizer(tap)
}
@objc private func tappedImageView() {
imageView.isHighlighted = switcher
switcher = !switcher
}