最后更新:2017-12-19

在第一天中, 我们完成了项目的基本设置、隐藏Dock、显示和隐藏Popover等操作,接下来的这章中, Pap.er将会去搭建对应 UI.

一、设置Popover对应颜色

官方的Pap.er的箭头部分色值为RGB=(34, 34, 34)

查找官方的NSPopover API,发现没有设置对应和方法, 尝试更改ContentViewController.view, 但是也是没有对应的属性来设置, 通过 Stack Overflow, 可以更改颜色设置.

Step1: 新建一个继承于NSView的子类,命名为: MainPopoverRootView;

Step2: 再新建一个继承于NSView的子类,命名为: MainPopoverBackgroundView;

Step3: 对新建的 MainPopoverRootViewMainPopoverBackgroundView 分别做如下的设置:


// MainPopoverRootView
class MainPopoverRootView: NSView { override func viewDidMoveToWindow() {
let aFrameView = self.window?.contentView?.superview let aBGView = MainPopoverBackgroundView(frame: aFrameView?.bounds ?? .zero)
aFrameView?.addSubview(aBGView, positioned: .below, relativeTo: aFrameView)
aBGView.autoresizingMask = [.width, .height]
super.viewDidMoveToWindow()
}
} // MainPopoverBackgroundView
class MainPopoverBackgroundView: NSView { override func draw(_ dirtyRect: NSRect) {
super.draw(dirtyRect) NSColor(red: 34/255.0, green: 34/255.0, blue: 34/255.0, alpha: 1).set()
dirtyRect.fill()
}
}

Step4: 打开 MainPopoverViewController.xib,设置如下:

Step5:运行结果如下:

二、构建主界面

  1. 打开 MainPopoverViewController.xib,设置宽高为: 285 * 600

  2. 将解析的资源里面的 paperHeaderreload_buttonSettingsdownload 文件拖入资源文件夹

最新文章

  1. Caffe源码解析7:Pooling_Layer
  2. VHDL的参数写在一个vhd文件里
  3. Android 生成xml文件
  4. Reorder List
  5. BZOJ 1042 硬币购物(完全背包+DP)
  6. 谷歌、火狐浏览器gift图片缓存后不显示动态效果
  7. [百度空间] [原] 全局operator delete重载到DLL
  8. 用Maven插件生成Mybatis代码
  9. 【转载】Android Studio 设置内存大小及原理
  10. 汉语转拼音pinyin4j
  11. ASP长文章分页的两个方法,函数
  12. 3d max export for unity3d
  13. Eclipse(MyEclipse)使用技巧——改动凝视字体大小
  14. [ES6] Rest Parameter
  15. hdu 5007 水 弦
  16. VS2010/MFC对话框一:创建对话框模板和修改对话框属性
  17. hdu 1558 (线段相交+并查集) Segment set
  18. ZOJ.3551.Bloodsucker(期望DP)
  19. 每日英语:Missing at Mobile World Congress: Innovation
  20. 【quickhybrid】组件(自定义)API的实现

热门文章

  1. vue开发中利用正则限制input框的输入(手机号、非0开头的正整数等)
  2. Docker Registry搭建
  3. linux 文件操作与目录操作
  4. 学习前端第二天之css层叠样式
  5. react route使用HashRouter和BrowserRouter的区别-Content Security Policy img-src 404(Not found)
  6. zxx.cms.app 开发中的一些git命令
  7. SpringCloud之Ribbon负载均衡配置
  8. 2.IOC 配置与应用(xml的方式)
  9. 【atcoder】GP 2 [agc036C]
  10. 【3】Kafka安装及部署