Как я могу вертикально центрировать NSImageCell внутри NSImageView

У меня есть NSImageView который динамически отображает изображение. Я хотел бы, чтобы изображение было вертикально центрировано в границах представления изображения. Как мне этого добиться? Я думаю, что код, который я написал, имеет смысл, но NSImageAlignment, похоже, не имеет никакого эффекта.

    imageView            = NSImageView()
    let image            = NSImage.init(byReferencingFile: "testimage.jpg")
    imageView!.image           = image
    imageView!.frame  = NSMakeRect(frameRect.origin.x, frameRect.origin.y, 180, 300)
    imageView!.imageFrameStyle = NSImageFrameStyle.Photo
    imageView!.imageScaling    = NSImageScaling.ScaleProportionallyUpOrDown
    imageView!.imageAlignment  = NSImageAlignment.AlignCenter

Пытаясь выяснить это, я узнал, что NSImageViews не имеют подпредставлений, но NSImageCells внутри них, отбрасывая меня от того, как работают UIImageViews. Я не хочу центрировать NSImageView, но NSCell внутри NSImageView.

Я попытался создать подкласс NSImageView, как описано здесь, но когда я делаю это, я теряю масштабирование.

Как я могу вертикально центрировать NSImageCell внутри NSImageView?

пикселей

0 ответов

Другие вопросы по тегам