3

我有一个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 子类化为详细的here,但是当我这样做时,我会失去缩放。

如何在 NSImageView 内垂直居中 NSImageCell?

像素

4

0 回答 0