gpt4 book ai didi

swift - MacOS - 如何以编程方式将 ImageView 彼此相邻放置?

转载 作者:行者123 更新时间:2023-11-30 12:04:23 25 4
gpt4 key购买 nike

在我的 MacOS 应用程序的主视图中,我尝试将一堆 ImageView 彼此相邻布局。

我使用的逻辑是,第一个 subview 将其 leadingAnchor 设置为主视图的 leadingAnchor,并且每个后续 subview 都有其 leadingAnchor 设置为前一个 subview 的 trailingAnchor

            let imgWidth :CGFloat = 100, imgHeight :CGFloat = 100
var leadingAnchor = self.view.leadingAnchor

for /*loop logic*/ {

let img: NSImage = funcToGetImage()
var imgView = NSImageView(frame: NSRect(origin: .zero, size: img.size))
imgView.image = img

self.view.addSubview(imgView)

imgView.widthAnchor.constraint(equalToConstant: imgWidth).isActive = true
imgView.heightAnchor.constraint(equalToConstant: imgHeight).isActive = true

imgView.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true

leadingAnchor = imgView.trailingAnchor

}

但是我只看到一张图像,而不是像我预期的那样一堆彼此相邻的图像。

我是 Swift/Xcode/MacOs 开发新手。我错过了什么?

编辑:

如果我更换线路

var imgView = NSImageView(frame: NSRect(origin: .zero, size: img.size))
imgView.image = img

imgView = NSImageView(image: img)

我什么也没看到。

编辑2:更换

var imgView = NSImageView(frame: NSRect(origin: .zero, size: img.size))

var imgView = NSImageView(frame: NSRect(origin: CGPoint(x: x, y: 0), size: img.size))

x += 100

成功了。

最佳答案

根据El Tomato的评论,我替换了

var imgView = NSImageView(frame: NSRect(origin: .zero, size: img.size))

var imgView = NSImageView(frame: NSRect(origin: CGPoint(x: x, y: 0), size: img.size))

x += 100

这就成功了。

关于swift - MacOS - 如何以编程方式将 ImageView 彼此相邻放置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46832758/

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