gpt4 book ai didi

swift - ScrollView 中的图像不可滚动

转载 作者:行者123 更新时间:2023-11-28 06:16:58 25 4
gpt4 key购买 nike

我被要求在一个短时间内使用 swift 和 xcode 工作的项目中提供帮助,这两个我以前都没有使用过。

任务是让图片“可缩放”。经过一些研究,我发现将 UIScrollView 放在图像顶部就足够了。现在,由于 ImageView 已经存在并且集成在代码中,我不敢轻视它,有一些限制等等。我不想用一个新的 ImageView 重新开始这个过程,然后再尝试将它挂接到代码中。主要是因为 ImageView 位于表格 View 内的表格单元格内。

我所做的是:

在 Storyboard上

  • 将 ImageView 放在 Storyboard上的 View 内。
  • 将 ScrollView 的委托(delegate)分配给表格单元格。
  • 我不太明白如何约束这些,所以我主要使用“添加缺失的约束”。

在 TableViewCell 的代码中

  • 继承了 UIScrollViewDelegate
  • 使用@IBOutlet weak var scrollView: UIScrollView 创建了一个新变量!
  • 由于我在 Controller 中,我无法覆盖 viewDidLoad 函数,所以我实现了该函数并将最小和最大缩放比例设置为一些值。
  • 实现了一个返回 UIImageView 的 viewForZooming 函数

我有点想出了如何使用 ImageView 的约束和属性来调整大小和内容,但是无论我尝试做什么,我都无法使“缩放”起作用。

是否有任何 ImageView 可能具有的属性导致了困惑,我应该检查什么?

最佳答案

在阅读并试图弄清楚之后,最终使它起作用的是:

  • ScrollViewInterface Builder 中成为 ImageView 的父级
  • 当出现约束错误提示时,我主要通过添加缺少的约束神奇地使约束适合 ScrollView 与其周围的所有内容对齐。
  • 右键单击 ScrollView,然后为委托(delegate)单击 + 符号并将其拖动到 UITableViewCell。
  • 我也对Referencing Outlet 做了同样的事情
  • UITableViewCell 的代码是这样的:

    class ClothesItemTableViewCell: UITableViewCell, UIScrollViewDelegate {
    @IBOutlet weak var scrollView: UIScrollView!
    var theImage: UIImage? {
    set {
    clothinhImageView.image = newValue
    } get {
    return clothingImageView.image
    }
    }

    func viewForZooming(in scrollView: UIScrollView) -> UIView? {
    return clothingImageView
    }
    }

可能不是很清楚,我找不到完成这项工作的确切文章。但是有很多尝试以不同的方式解决这个问题,并且不知何故这奏效了。希望对某人有所帮助!

关于swift - ScrollView 中的图像不可滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44844986/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com