【Swift Mac开发】开发日常小记录Tips

  1、禁止NSViewController更改大小

    override func viewDidAppear() {
        super.viewDidAppear()
        view.window!.styleMask.remove(.resizable)
    }

   2、更改NSTextField的背景颜色

  更改NSTextField的背景颜色与NSView的不同,不需要Wantslayer

textField.backgroundColor = NSColor.lightGray

   3、设置NSImageView的填充样式

复制代码
import Foundation
import Cocoa

class BMBaseImageView: NSImageView {
    
    override var image: NSImage? {
        set {
            self.layer = CALayer()
            //设置图片的填充样式
            self.layer?.contentsGravity = CALayerContentsGravity.resizeAspectFill
            self.layer?.contents = newValue
            self.wantsLayer = true
            super.image = newValue
        }
        get {
            return super.image
        }
    }
}
复制代码

   4、NSTextField不允许输入中文

        let cell : NSTextFieldCell = pwdTextField.cell! as! NSTextFieldCell
        cell.allowedInputSourceLocales = [NSAllRomanInputSourcesLocaleIdentifier]

   5、NSBezierPath绘制线条

            let myPath = NSBezierPath()
            myPath.move(to: CGPoint(x:  drawDatePoint.x + dateAttrString.size().width / 2, y: 0))
            myPath.line(to: CGPoint(x:  drawDatePoint.x + dateAttrString.size().width / 2, y:  drawDatePoint.y))
            NSColor.init(hexRGB: 0xf5f5f5).set()
            myPath.stroke()

 

posted @   Mr·Xu  阅读(187)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· 百万级群聊的设计实践
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
历史上的今天:
2019-05-14 【React Native】日常踩坑记录_以后将持续更新
点击右上角即可分享
微信分享提示