自定义一个模态视图

下面是自定义的一个模态视图,比如说可以用作loading的背景视图等。


import Cocoa

class ModelView: NSView {
    override var acceptsFirstResponder: Bool {
        return false
    }
    
    override func scrollWheel(with event: NSEvent) {
        
    }
    
// 适用常用的箭头样式
    override func cursorUpdate(with event: NSEvent) {
        NSCursor.arrow.set()
    }
    
    override func mouseEntered(with event: NSEvent) {
        
    }
    
    override func mouseExited(with event: NSEvent) {
        
    }
    
    override func mouseMoved(with event: NSEvent) {
        
    }
    
    override func mouseDragged(with event: NSEvent) {
        
    }
    
    override func mouseUp(with event: NSEvent) {
        
    }
    
    override func mouseDown(with event: NSEvent) {
        
    }

    
}

当然上面的方法不是每个都会走,但已经可以处理大多数但场景。
若底层的视图是个webview,那就很难阻止webview上面更新的各种鼠标样式,因为webview使用的有追踪区域,处理这些样式,需要让webview移除trackingAreas。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容