我有5张图片浏览量。我需要获取被点击的图像视图的ID。我尝试添加点击手势标识符并获取发件人的ID,但我没有得到它。
到目前为止我所尝试的内容如下
@IBOutlet weak var userRateViewStar1ImageOutlet : UIImageView!
@IBOutlet weak var userRateViewStar2ImageOutlet : UIImageView!
@IBOutlet weak var userRateViewStar3ImageOutlet : UIImageView!
@IBOutlet weak var userRateViewStar4ImageOutlet : UIImageView!
@IBOutlet weak var userRateViewStar5ImageOutlet : UIImageView!
@IBOutlet weak var userRateViewTextAreaOutlet : UITextView!
@IBOutlet var starOutletCollectionOutlet : [UIImageView]!
@IBAction func starRatingAction(_ sender: UITapGestureRecognizer)
{
var tag = sender.view!.tag
print(tag)
}
基本上我正在尝试实施费率功能。
那么有人可以建议我实现这个方法吗?
答案 0 :(得分:0)
您可以使用UIButton
s。
如果您想使用UIImageView
,请按以下步骤操作:
UIImageView
。在右侧的属性检查器中,将其图像设置为star.png
图像,然后选中启用用户交互。StackView
。选择填充对齐,按比例填写进行分发。5:1
的宽高比约束。给它约束将它放在页面上并定义它的宽度。@IBAction
例程。拖出点击手势识别器并将其放在每个图像上。在文档大纲视图和控制 -drag中找到5 Tap手势识别器,从它们每个到@IBAction
例程。 1
至5
分配给您的星空图片。如果@IBOutlet
需要UIImageView
,您可以将它们连接到相同的 Outlet Collection ,例如:
@IBOutlet var starOutletCollection : [UIImageView]!
然后你可以遍历它们来改变它们的图像,例如:
// turn off all of the stars
for star in starOutletCollection {
star.image = UIImage(named: starOff.png)
}