Я злиться на этот код, потому что он просто показывает последний вид (в его правильное положение) и забывает рисовать другие ...Не удается правильно складывать взгляды в NSClipView
// Gets a stack of devices
let volumes = getDevices()
var index = 0
for device in volumes {
let volume = devicePrototype
// devicePrototype it's a custom view
volume?.setName(name: device.name) // setting the label for the name
volume?.setIcon(icon: device.icon) // setting the image for the icon
// Setting the position of the view (width = 600, height = 105)
// and all the views have the same size.
volume?.layer?.frame = CGRect(x: 0, y: index * 105, width: 600, height: 105)
// Adding the view to the NSClipView (Here's the problem :P)
devicesStack.addSubview(volume!)
index += 1
}
Можете ли вы помочь мне найти проблему, пожалуйста?
Это не работает, потому что я создал интерфейс, используя пользовательское представление в интерфейсе строителя и я соединил свои этикетки и представления изображения на свой собственный класса с использованием розетки. Итак, дело в том, что если я инициализирую только класс, я не смогу использовать интерфейс: (и мое решение заключалось в том, чтобы вырезать выход из пользовательского представления в делегате приложения (с именем devicePrototype), чтобы я мог создавать экземпляры вроде это ... Как создать несколько экземпляров чего-нибудь, встроенного в построитель интерфейсов? – Cristian
Создайте пользовательские классы и используйте его экземпляры. Вы можете подключить классы к представлениям конструктора интерфейса. –