首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏github@hornhuang

    【iOS】如何在 NSViewController、NSView 中关闭当前 NSWindowController ?

    太麻烦了 而且这个方法毕竟不是官方推荐的,就像手动调用 ViewController 的 layoutSubViews 一样,感觉不稳,所以我要找个稳妥的方法给大家 推荐 NSView :: window NSView().window?. } } 直接对当前 View 所在 window 执行 close 方法就可以啦,系统会帮我们进行后续的操作 注意这里要分 NSWindowControoler、NSViewController 和 NSView NSWindowController :: 我们直接使用 self.window.close() 就可以啦 NSViewController :: 我们需要通过 self.view.window.close() 来关闭 NSView

    1.5K20编辑于 2021-12-30
  • 来自专栏github@hornhuang

    【iOS】如何在 NSViewController、NSView 中关闭当前 NSWindowController ?

    太麻烦了 而且这个方法毕竟不是官方推荐的,就像手动调用 ViewController 的 layoutSubViews 一样,感觉不稳,所以我要找个稳妥的方法给大家 # 推荐 NSView :: window NSView().window?. } } 直接对当前 View 所在 window 执行 close 方法就可以啦,系统会帮我们进行后续的操作 注意这里要分 NSWindowControoler、NSViewController 和 NSView NSWindowController :: 我们直接使用 self.window.close() 就可以啦 NSViewController :: 我们需要通过 self.view.window.close() 来关闭 NSView

    1.6K40发布于 2021-09-24
  • 来自专栏github@hornhuang

    【iOS】获取当前 NSViewController 的 window 以及其所在 NSWindowController 的 window

    前言 场景:登录成功后,我们需要关闭当前登录页的 NSViewController 以及 NSWindowController ,这时就需要获得当前的 window 进行关闭 # 解决 这里分别针对 NSView 、NSViewController、NSWindowController 给出方案 # NSView 这三者方法其实类似,看完。 NSView 的后面就能猜到了 self.window 通过阅读官方文档我们发现,NSView 本身就是持有 window 的,所以这个很简单 # NSViewController NSViewController NSWindowController NSWindowController 本身也持有,所以也很简单啦 self.window 这里要注意:由于 window 是在 NSWindowController 上,而 NSView

    1.5K10发布于 2021-09-26
  • 来自专栏macOS 开发学习

    macOS 开发基础教程视频 - 理解bounds本质

    在macOS 开发基础教程视频课程的NSView章节中,解释了关于视图的frame和bounds的坐标参照系统,限于授课经验与课程时间,感觉对NSView的bounds属性,表述的不够深入,希望通过本文帮助观看课程的同学加深对 bounds的理解,并通过实例运用,体会在NSView中bounds的真正价值。 这正如你在房间的墙上(父控件)里放置了一个有相框壁画(NSView)。 为了防止壁画(NSView)蒙尘,你将整个壁画(NSView)都遮盖保护起来。 通过bounds,我们就可以看到NSView内部所展示的内容。 如果bounds比较小(就像你在遮盖上开了一个小小的窗口),可以通过移动bounds位置,来展示NSView的各个区域内容。

    1.3K40发布于 2018-08-23
  • 来自专栏github@hornhuang

    【iOS】获取当前 NSViewController 的 window 以及其所在 NSWindowController 的 window

    前言 场景:登录成功后,我们需要关闭当前登录页的 NSViewController 以及 NSWindowController ,这时就需要获得当前的 window 进行关闭 解决 这里分别针对 NSView 、NSViewController、NSWindowController 给出方案 NSView 这三者方法其实类似,看完。 NSView 的后面就能猜到了 self.window 通过阅读官方文档我们发现,NSView 本身就是持有 window 的,所以这个很简单 NSViewController NSViewController NSWindowController NSWindowController 本身也持有,所以也很简单啦 self.window 这里要注意:由于 window 是在 NSWindowController 上,而 NSView

    74630编辑于 2021-12-30
  • 来自专栏macOS 开发学习

    macOS AppKit 的事件响应简介

    的对象,这些NSView对象通常用来绘制交互界面以及处理响应事件. 鼠标(或触控板)事件派发路径 前面已经提到过,一个NSWindow对象使用sendEvent:方法将鼠标事件派发给用户操作的视图(NSView)对象.那么NSWindow是怎样识别是哪个NSView在被用户操作呢 ,NSWindow还会询问NSView是否希望成为第一响应者,以便接收键盘和action消息. 一个NSView对象可以接收三种类型的鼠标事件:鼠标点击,鼠标拖拽和鼠标移动. 如果你要避免这种情况,可以通过重写NSView的acceptsFirstMouse: 方法,并返回YES NSView 通常会自动接收鼠标点击和鼠标拖拽事件,而不会主动接收鼠标移动事件.因为鼠标移动事件发生的太过频繁

    3.4K60发布于 2018-08-23
  • 来自专栏君赏技术博客

    Jekyll-Admin-Mac 开发纪要-左侧菜单栏

    我们设置刚才新建的 NSView继承我们新建的类 SideMenuView。 使用 Xib 加载试图 到这里,我们新建的 NSView无法正常的显示出来。 , row: Int) -> NSView? , row: Int) -> NSView? , row: Int) -> NSView? , row: Int) -> NSView?

    3K10发布于 2018-08-31
  • 来自专栏君赏技术博客

    Jekyll-Admin-Mac-模板处理

    设置 NSView的圆角 我们可以发现界面很多都用到了圆角,这对于 iOS里面是很常见的。我们新建一个 NSView的分类NSView+CornerRadius用于画圆角。 我们刚才 NSView+CornerRadius.swift文件给 NSView做了一个分类用于设置圆角,我们发现并不成功。 我们需要设置 wantsLayer属性。 制作 文章 页面 数据的模板 新建一个类 BaseListView继承于 NSView。 458CB6F0-458D-4BA4-BF45-E32642105894 我查看一下原来是 NSView重写了 print导致我们调用直接走 NSView的方法。 var headerContent:NSView?

    7.8K30发布于 2018-09-07
  • 来自专栏macOS 开发学习

    Mac开发跬步积累(五): Dark Mode下适配你的UI界面

    NSWindow会继承App的appearance效果; NSView会继承其父类或者NSWindow的appearance效果; 开发者可以设置App的整体或者部分的appearance效果; 当Appkit flipped:drawingHandler:)方法可以让Appkit根据appearance变化时自动调用drawingHandler中的代码进行图片创建,从而实现适配效果; 0x03: 自定义View 适配(NSView ) 当改变当前的appearance时,AppKit会自动调用NSView的下面几个方法(根据情况调用) updateLayer() draw(_:) layout() updateConstraints 0x04: 定制App的appearance(NSApp) 设置NSView或者NSWindow的appearance: NSView Appearance 注意点!!! Appearance是存在继承关系的:NSApp->NSWindow->NSView 通过代码方式设置NSView的appearance: class MyContentView : NSView {

    2.8K20发布于 2018-12-14
  • 来自专栏君赏技术博客

    怎么让继承的类直接使用XIB的布局试图

    但是拖拽一个NSView,继承与我们刚才的自定义试图,运行发现出不来我们XIB界面。 我自己分析了一下原因,虽然我们让XIB的类指向我们自己自定义试图,但是关联不起来试图。 新建一个OToolBarView类继承于NSView. class OToolBarView: NSView { } 因为Storyboard不允许直接拖拽NSView,允许我们拖拽NSViewController

    1.4K20发布于 2018-08-31
  • 来自专栏macOS 开发学习

    macOS 开发 - 小基础拾遗

    NSView的layer说明: 在macOS中,NSView由于历史原因,并不像iOS中的UIView一样天然的就带有一个layer图层,这在NSView的使用时,会造成有时通过layer.backgroundColor 如果希望NSView可以正常使用layer图层,仅仅需要设置wantsLayer 属性为YES(Swift中是true)即可.

    89920发布于 2018-08-23
  • 来自专栏全栈程序员必看

    iOS的QuickTime Plugin

    总之可以更确定,WAKView就是替代了NSView,以求和Mac的WebView共用代码,但iOS application是单进程程序,只能用CALayer树来代替NSView树做组合了。

    57620编辑于 2021-12-27
  • 来自专栏一“技”之长

    OS X开发NSMenu应用详解 原

    四、视图右键弹出菜单     视图右键弹出菜单是基于NSView视图的,例如: - (void)viewDidLoad { [super viewDidLoad]; NSMenu * menu NSString *title; //在所在的交互点弹出菜单 + (void)popUpContextMenu:(NSMenu*)menu withEvent:(NSEvent*)event forView:(NSView *)view; + (void)popUpContextMenu:(NSMenu*)menu withEvent:(NSEvent*)event forView:(NSView*)view withFont )popUpMenuPositioningItem:(nullable NSMenuItem *)item atLocation:(NSPoint)location inView:(nullable NSView

    1.9K30发布于 2018-08-15
  • 来自专栏一“技”之长

    自定义Window标题栏titleBar 原

    setStyleMask:[self.window styleMask] | NSWindowStyleMaskFullSizeContentView]; //获取到windows的主视图 NSView * themeView = self.window.contentView.superview; //根据层级结构获取到标题栏视图 NSView * titleView = themeView.subviews

    1.9K20发布于 2018-08-15
  • 来自专栏MixLab科技+设计实验室

    设计师编程指南之Sketch插件开发 7 GUI

    "This a alert view"); dialog.addButtonWithTitle("Save"); dialog.addButtonWithTitle("Cancel"); 新建一个 NSView ,作为 select 和 ckeckbox 的容器 var customView = NSView.alloc().initWithFrame(NSMakeRect(0, 0, 200, 180));

    1.2K40发布于 2018-04-17
  • 来自专栏正则

    AVKit框架详细解析(一) —— 基本概览(一)

    Classes AVCaptureView AVCaptureView是NSView的一个子类,可用于显示用于捕获媒体数据的标准用户界面控件。 AVPlayerView AVPlayerView是一个NSView的子类,用于显示AVPlayer对象的可视内容,并提供标准的控件来管理其播放。

    1.2K10发布于 2021-09-04
  • 来自专栏君赏技术博客

    Jekyll-Admin-Mac-列表

    , row: Int) -> NSView? { if let headerCell = tableColumn?. 我们发现 sizeThatFits并不是 NSView只有 NSControl或者子类才可以使用。但是对于我们的需求已经够了。 , row: Int) -> NSView? { guard let identifier = tableColumn?. 给 NSView添加 NSGestureRecognizer时间 参考资料: NSGestureRecognizer。 ? , row: Int) -> NSView?方法 增加代码如下 if let actionView = view as?

    3.7K10发布于 2018-08-31
  • 来自专栏一“技”之长

    macOS开发之NSTableView的应用详解

    } @end 五、View-Base:基于View的TableView视图     基于View-Base的TableView要比基于Cell的TableView更加灵活,其中每行数据载体可以是任意NSView indexSet; 八、来总结下NSTableViewDelegate协议 //view-base的TableView相关delegate方法 /* 设置每个数据载体的View */ - (nullable NSView frameOfCellAtColumn:(NSInteger)column row:(NSInteger)row; //获取某个位置的View,用于view-base - (nullable __kindof NSView *)view; //获取某个View所在的列 用于view-base - (NSInteger)columnForView:(NSView *)view; //创建一个用于渲染的View 用于view-base - (nullable __kindof NSView *)makeViewWithIdentifier:(NSString *)identifier owner:(nullable id)owner

    5.8K21发布于 2018-08-15
  • 来自专栏nimomeng的自我进阶

    Swift4 新特性一览

    ,可以在Swift4中用如下方法来搞定: var targetControl: [UIControl & Shakeable] 再例如,在OC中,我们会有如下代码: @property (weak) NSView <NSTextInputClient> *client; 在Swift4中,直接可以用以下语句来实现 var client: [NSView & NSTextInputClient]工具附加特性 XCode

    1.4K20发布于 2018-09-13
  • 来自专栏macOS 开发学习

    Swift 日常使用Tip

    设置UIView/NSView的指定圆角(限于iOS11.0+,macOS10.13) let redView = UIView(frame: CGRect(x: 70, y: 80, width : 110, height: 110)) // 若macOS中 则使用NSView redView.backgroundColor = .red // macOS中为redView.layer.backgroundColor

    1.3K30发布于 2018-08-23
领券