ios - 如何将多个 ImageView 分组以获得 1 个点击手势识别器?

标签 ios swift uiimageview swift4 uitapgesturerecognizer

我有 5 个 ImageView 。我需要获取被点击的 ImageView 的 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)

}

基本上我正在尝试实现费率功能。

那么有人可以建议我一种实现这个的方法吗?

最佳答案

您可以只使用UIButton

如果您想使用 UIImageView,请按以下步骤操作:

  1. 拖出一个UIImageView。在右侧的“属性检查器”中,将其图像设置为您的“star.png”图像并选中“启用用户交互”。
  2. 使用复制(命令-C)和粘贴(命令-V)制作四份副本。将它们排成一行,将它们全部选中,然后通过从菜单中选择编辑器->嵌入->堆栈 View 将它们嵌入到StackView中。选择填充对齐和按比例填充进行分布。
  3. 为您的堆栈 View 指定长宽比约束为5:1。对其进行约束以将其放置在页面上并定义其宽度。
  4. 每个图像都需要自己的点击手势识别器,但它们都可以连接到相同的@IBAction例程。拖出点击手势识别器并将其放在每个图像上。在文档大纲 View 控件中找到 5 个点击手势识别器 - 将它们分别拖动到您的@IBAction例程。
  5. 将标签 15 分配给您的星星图片。
  6. 如果您的 UIImageView 需要 @IBOutlet,您可以将它们分别连接到同一个 Outlet Collection,例如作为您的:

    @IBOutlet var starOutletCollection : [UIImageView]!
    

    然后你可以循环它们来更改它们的图像,例如:

    // turn off all of the stars
    for star in starOutletCollection {
        star.image = UIImage(named: starOff.png)
    }
    

关于ios - 如何将多个 ImageView 分组以获得 1 个点击手势识别器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47450584/

相关文章:

ios - 如何通过 touchesMoved 方法获取用于在场景 View 上绘制 UIBezierpath 的准确 CGpoint?

ios - 我可以将我的对象保存在内存中直到应用程序退出吗?

iphone - 通过触摸传递到下面的 UIViews

ios - 点击屏幕时加载图像

ios - UIImagePickerController: didFinishPickingMediaWithInfo 未被调用

ios - 获取电子邮件并命名 Facebook SDK v4.4.0 Swift

iphone - 将简单的 Obj-C 转换为 Python

swift - 如何在 Swift 2.1 中动态创建角色

uitableview - 快速展开和折叠表格 View

swift - 如何改变UIButton的位置?