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 を中央に配置したくはありませんが、NSImageViewに NSCell を配置します。

hereの詳細に従って NSImageView をサブクラス化しようとしましたが、これを行うとスケーリングが失われます。

NSImageView内でNSImageCellを垂直方向に中央揃えするにはどうすればよいですか?

ピクセル

4

0 に答える 0