返回首页
苏宁会员
购物车 0
易付宝
手机苏宁

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

  • 服务承诺: 正品保障
  • 公司名称:
  • 所 在 地:

  • MacOS应用开发基础教程 赵君卫,张帆 著 专业科技 文轩网
  • 新华书店正版
    • 作者: 赵君卫 张帆著
    • 出版社: 人民邮电出版社
    • 出版时间:2017-03-01 00:00:00
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    文轩网图书旗舰店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

    商品分类

         https://product.suning.com/0070067633/11555288247.html

     

    商品参数
    • 作者: 赵君卫 张帆著
    • 出版社:人民邮电出版社
    • 出版时间:2017-03-01 00:00:00
    • 版次:1
    • 印刷时间:2017-03-01
    • 字数:968000.000
    • 页数:586
    • 开本:其他
    • 装帧:平装
    • ISBN:9787115486400
    • 国别/地区:中国
    • 版权提供:人民邮电出版社

    MacOS应用开发基础教程

    作  者:赵君卫,张帆 著
    定  价:108
    出 版 社:人民邮电出版社
    出版日期:2018年09月01日
    页  数:585
    装  帧:平装
    ISBN:9787115486400
    主编推荐

      

    内容简介

    本书是Swift版本的macOS应用开发教程。本书全面介绍和说明了macOS平台中应用开发的系统控件,详细阐述和探讨了应用开发的常用组件、系统框架、应用沙盒处理、上架流程、生产力工具开发等内容,并配有丰富的示例讲解。书中还介绍了几个小型的演示项目,剖析了开发过程、开发思路和关键流程代码,力求让读者从基础知识和项目实践等多个维度去理解和掌握macOS平台的应用开发。本书立足普及基本的macOS应用开发知识,力求每个知识点的讲解都简明扼要,并通过代码示例演示让读者尽快学以致用,很好适合macOS应用开发的初学者阅读。但是,本书中并没有介绍Swift的基础语法,阅读本书需要读者了解Swift的知识。

    作者简介

       赵君卫,中国早期的iOSkai发者,负责开发了zhu名的LBS交友App“飘信”,曾担任苏宁易购移动技术团队负责人、途牛金融移动技术总监;2014年开始接触macOS应用开发,独立开发了macOS平台上UI设计工具AppX;创建了macOS应用开发网站macdev,汇聚与macOS相关的开发资源,崇尚自动化开发的理念,打造优选的生产力工具。

    张帆,留美博士,专注于计算机和互联网技术在诸如信息安全、通信电子、医疗健康等特定行业的应用,擅长iOS和.NET开发;曾在美国微软总部和飞利浦医疗北美总部任职;入选浙江省“千人计划”;曾任新加坡国立大学访问学者,现任浙江大学信息与电子工程学院和浙江大学网络空间安全研究中心副教授,同时也是新加坡科技设计大学访问教授。

    精彩内容

    目录
       章准备工作1

    1.1Mac电脑1

    1.2Xcode使用介绍1

    1.2.1Xcode工作区2

    1.2.2xib界面设计相关的工作区和菜单3

    1.3工程结构5

    1.3.1使用xib方式创建的工程5

    1.3.2使用storyboard方式创建的工程11

    第2章窗口对象13

    2.1窗口界面的组成14

    2.2模态窗口16

    2.2.1模态窗口16

    2.2.2模态会话窗口16

    2.3编程控制窗口17

    2.3.1创建窗口对象17

    2.3.2窗口通知18

    2.3.3NSWindow的contentView18

    2.3.4设置窗口的image和title19

    2.3.5设置窗口的背景颜色19

    2.3.6关闭窗口时终止应用19

    2.3.7在窗口标题区域增加视图20

    2.3.8NSWindow如何正确地保证居中显示21

    2.3.9窗口显示位置控制21

    2.3.10应用关闭后点击Dock菜单再次打开应用21

    2.4窗口的创建和管理21

    第3章视图和滚动条23

    3.1基本视图23

    3.1.1坐标系统23

    3.1.2frame和bounds24

    3.1.3坐标转换25

    3.1.4视图管理25

    3.1.5视图查找25

    3.1.6视图的autoSize控制25

    3.1.7视图的layer属性27

    3.1.8视图绘制27

    3.1.9事件响应28

    3.1.10视图的frame/bounds变化通知28

    3.2增效视图29

    3.3滚动条视图31

    3.3.1滚动条视图工作原理31

    3.3.2用代码创建滚动条视图32

    3.3.3滚动到zhi定的位置32

    3.3.4用代码实现文本视图滚动的示例33

    3.3.5滚动条的显示控制34

    第4章基本控件35

    4.1控件的分类35

    4.2控件家族类图谱35

    4.2.1NSResponder37

    4.2.2NSView38

    4.2.3NSControl38

    4.2.4NSCell38

    4.2.5小结39

    4.3文本框39

    4.3.1UI属性说明40

    4.3.2事件响应40

    4.3.3文本内容的读取或修改41

    4.3.4特殊按键响应处理41

    4.4文本视图42

    4.4.1UI属性说明42

    4.4.2事件响应43

    4.4.3文本的格式化显示43

    4.4.4文本框高度根据文字高度自适应增长44

    4.5文本搜索框44

    4.6文本标签46

    4.6.1UI属性说明46

    4.6.2用代码创建文本标签46

    4.7按钮48

    4.7.1UI属性说明48

    4.7.2事件响应48

    4.7.3连接事件49

    4.7.4用代码创建按钮49

    4.7.5图片按钮的创建49

    4.8复选框50

    4.8.1UI属性说明51

    4.8.2事件响应51

    4.9单选按钮51

    4.9.1UI属性说明51

    4.9.2事件响应52

    4.10分段选择控件52

    4.10.1UI属性说明53

    4.10.2事件响应53

    4.10.3分段大小的控制53

    4.10.4分段样式风格的控制53

    4.11组合框54

    4.11.1UI属性说明54

    4.11.2事件响应55

    4.11.3动态增加列表内容55

    4.11.4使用数据源和代理55

    4.12弹出式按钮56

    4.12.1UI属性说明56

    4.12.2动态列表项配置56

    4.12.3事件响应57

    4.13滑杆57

    4.13.1属性设置57

    4.13.2水平和垂直方向设置57

    4.13.3事件绑定58

    4.14日期选择器58

    4.14.1UI属性说明58

    4.14.2获取日期59

    4.14.3日期变化的事件59

    4.15步进器59

    4.15.1UI属性说明60

    4.15.2事件响应60

    4.15.3文本框数据与步进器保持同步60

    4.16进度指示器60

    4.16.1UI属性说明61

    4.16.2启动指示器动画61

    4.16.3更新指示器进度61

    4.16.4停止指示器动画61

    4.16.5用代码创建进度指示器62

    4.17图像视图62

    4.17.1UI属性说明62

    4.17.2圆角处理62

    4.18分组框63

    4.18.1UI属性说明63

    4.18.2用代码创建分组框63

    4.19分栏视图64

    4.19.1重要属性和方法说明64

    4.19.2用代码创建分栏视图65

    4.19.3自定义分栏视图样式风格65

    4.19.4分栏视图中的子视图控制66

    4.19.5分栏视图子视图的隐藏和显示68

    4.20集合视图68

    4.20.1集合视图的content69

    4.20.2NSCollectionViewItem69

    4.20.3绑定模型到视图70

    4.20.4使用数据源方式管理集合视图71

    4.20.5实现集合视图的高亮选择73

    4.20.6集合视图的背景设置75

    4.20.7集合视图的布局管理器75

    4.20.8设置集合视图的顶部头和底部尾77

    4.20.9用代码创建集合视图79

    4.21选项卡视图79

    4.21.1UI属性说明80

    4.21.2代理协议NSTabViewDelegate80

    4.21.3动态增加选项卡80

    4.21.4用无边风格的选项卡进行切换控制81

    4.22弹出式气泡82

    4.22.1重要属性82

    4.22.2使用示例83

    第5章面板和警告框84

    5.1面板84

    5.1.1UI属性说明85

    5.1.2显示面板85

    5.1.3隐藏面板86

    5.1.4文件打开面板86

    5.1.5文件保存面板88

    5.1.6颜色选择面板88

    5.1.7字体选择面板89

    5.2警告框89

    5.2.1UI属性说明89

    5.2.2添加按钮90

    5.2.3使用示例90

    5.3使用独立的xib文件创建面板类91

    第6章工具栏和菜单94

    6.1工具栏94

    6.1.1创建工具栏94

    6.1.2UI属性说明95

    6.1.3NSToolbarItem的属性说明96

    6.1.4事件响应96

    6.1.5创建非标准的工具栏项97

    6.1.6验证工具栏项97

    6.1.7用代码创建工具栏98

    6.1.8工具栏与窗口控制按钮融合显示99

    6.2菜单99

    6.2.1UI属性说明100

    6.2.2增加菜单101

    6.2.3弹出式菜单101

    6.2.4设置上下文菜单102

    6.2.5Dock菜单102

    6.2.6用代码创建菜单103

    6.2.7获取应用默认的菜单104

    6.2.8菜单有效性验证104

    6.3状态条105

    6.3.1NSStatusBar类的对象关系105

    6.3.2NSStatusBar的使用方式105

    6.3.3状态条增加弹出视图107

    第7章表视图109

    7.1表视图109

    7.1.1使用xib创建表格109

    7.1.2表格样式设置112

    7.1.3表格数据显示配置112

    7.1.4表格事件119

    7.1.5创建表格上下文菜单120

    7.1.6数据排序120

    7.1.7数据拖放121

    7.1.8表格数据获取121

    7.1.9编辑表格内容121

    7.1.10动态增加/删除表格行122

    7.1.11用代码创建表格123

    7.1.12代码控制选中行125

    7.1.13表格行选中颜色定制126

    7.2大纲视图控件126

    7.2.1节点模型定义127

    7.2.2初始化模型数据128

    7.2.3实现数据源协议128

    7.2.4实现代理方法,绑定数据到节点视图129

    7.2.5节点选择的变化事件通知129

    7.2.6动态增加节点130

    7.2.7动态删除节点130

    7.2.8代码控制行的展开和选中131

    7.2.9修改节点展开关闭的默认图标132

    7.2.10鼠标右键上下文菜单133

    第8章自动布局134

    8.1自动布局的原理134

    8.1.1传统的布局134

    8.1.2自动布局135

    8.2栈视图137

    8.3Xcode中的自动布局设置138

    8.3.1Stack139

    8.3.2Align140

    8.3.3Pin140

    8.3.4Resolve141

    8.4自动布局的多种解决方案141

    8.4.1一个问题的多种解决方案142

    8.4.2约束选择的原则和建议144

    8.5自动布局使用示例144

    8.5.1两个视图大小相同144

    8.5.23个View大小相同145

    8.5.3文本标签和输入框145

    8.5.4文本标签动态字体和输入框146

    8.5.5多行文本标签和输入框146

    8.5.6多行文本标签动态字体和输入框147

    8.5.7两个视图大小相同、水平方向的间距相同148

    8.5.8简单的StackView149

    8.5.9复杂界面未使用栈视图150

    8.5.10复杂界面使用多个嵌套栈视图151

    8.6滚动条视图使用自动布局151

    8.7通过代码设置自动布局约束153

    8.7.1使用NSLayoutConstraint类153

    8.7.2使用NSLayoutAnchor155

    8.7.3使用VFL定义约束关系155

    8.7.4使用第三方库AutoLayoutX155

    第9章窗口控制器157

    9.1xib中窗口的加载创建过程157

    9.2手工创建窗口需要注意的问题160

    9.3窗口控制器和窗口的关系161

    9.4将AppDelegate中窗口的管理功能分离161

    9.5窗口切换后对象失去焦点问题163

    0章视图控制器164

    10.1视图控制器164

    10.1.1视图生命周期过程165

    10.1.2创建视图控制器的3种方式166

    10.1.3representedObject属性167

    10.1.4子视图控制器管理168

    10.1.5两个视图控制器之间的切换方法169

    10.1.6Storyboard中的视图控制172

    10.1.7视图中手势识别174

    10.2选项卡控制器175

    10.2.1使用NSTabView创建选项卡视图175

    10.2.2使用NSTabViewController管理选项卡视图176

    10.2.3使用Storyboard方式创建176

    10.2.4选项卡选中事件177

    10.3分栏视图控制器178

    10.3.1控制器的几个重要的属性和方法178

    10.3.2NSSplitViewItem179

    10.3.3NSSplitView179

    10.3.4使用Storyboard创建分栏视图控制器179

    10.3.5用代码创建分栏视图控制器180

    10.3.6可折叠的视图控制181

    10.4视图控制器与窗口控制器的关系183

    10.4.1视图与窗口183

    10.4.2视图控制器与窗口控制器183

    10.4.3不依赖xib和storyboard,纯代码实现应用184

    10.5使用窗口控制器和视图控制器实现简单登录流程186

    10.5.1登录流程的基本工程实现186

    10.5.2代码控制启动的控制器190

    10.5.3登录页面使用效果美化190

    10.5.4登录页面纯代码实现192

    10.5.5整个工程纯代码实现195

    10.6滚动条视图gao级用法195

    10.6.1滚动条视图显示多个按钮195

    10.6.2滚动条视图处理分页滑动199

    1章鼠标和键盘事件206

    11.1事件的分发过程206

    11.2事件中的两个核心类207

    11.2.1NSResponder207

    11.2.2NSEvent207

    11.3鼠标事件208

    11.3.1鼠标点击208

    11.3.2鼠标拖放209

    11.3.3鼠标区域跟踪210

    11.3.4模拟鼠标点击选中212

    11.4键盘事件213

    11.4.1快捷键213

    11.4.2控制键214

    11.5按键绑定事件215

    11.5.1系统绑定的按键事件215

    11.5.2文字输入216

    11.6事件监控218

    11.7动作消息218

    11.8在视图控制器中处理事件219

    2章撤销/重做操作220

    12.1撤销/重做流程分析220

    12.2实现原理222

    12.3撤销/重做动作的管理223

    12.3.1NSUndoManager的创建223

    12.3.2注册撤销动作223

    12.3.3清除撤销动作224

    12.3.4禁止注册撤销动作224

    12.3.5撤销动作命名224

    12.3.6撤销组224

    12.4撤销栈的深度224

    12.5撤销/重做通知消息225

    12.6撤销/重做编程示例225

    3章拖放操作227

    13.1拖放开始227

    13.1.1拖放数据定义227

    13.1.2拖放的可视化图像设置229

    13.1.3拖放源事件229

    13.1.4拖放源协议NSDraggingSource230

    13.2拖放接收231

    13.2.1注册接收的拖放类型231

    13.2.2拖放目标方协议231

    13.2.3拖放接收方处理过程231

    13.3拖放端到端编程232

    13.3.1拖放源类DragSourceView232

    13.3.2拖放目标类233

    13.3.3视图控制器中拖放源初始化235

    13.4常见的拖放示例236

    13.4.1文件拖放处理236

    13.4.2表格视图的拖放处理237

    13.4.3大纲视图的数据拖放处理239

    4章Cocoa数据绑定243

    14.1KVC243

    14.1.1KVC属性读写接口244

    14.1.2KVC路径访问相关接口244

    14.1.3批量属性访问接口244

    14.2KVO245

    14.2.1KVO相关接口245

    14.2.2手工管理KVO246

    14.2.3KVO的简单例子247

    14.3KVB248

    14.3.1传统的数据更新流程249

    14.3.2使用绑定技术简化更新流程249

    14.3.3实现绑定依赖的关键点252

    14.3.4KVB绑定的处理流程253

    14.3.5使用NSArrayController管理数据254

    14.3.6使用NSTreeController管理数据256

    5章蓝牙框架261

    15.1蓝牙数据交换流程261

    15.2蓝牙框架中的相关类262

    15.2.1外围设备相关263

    15.2.2数据中心相关263

    15.2.3服务相关263

    15.2.4特征值相关263

    15.3外围设备的工作流程263

    15.3.1系统初始化上电263

    15.3.2创建服务264

    15.3.3创建特征值264

    15.3.4服务与特征值关联264

    15.3.5发布服务264

    15.3.6广播服务265

    15.3.7数据读写请求265

    15.3.8订阅请求处理266

    15.4数据中心工作流程266

    15.4.1系统初始化上电266

    15.4.2搜索外围设备267

    15.4.3建立连接267

    15.4.4查询服务267

    15.4.5查询服务特征值267

    15.4.6服务特征读请求268

    15.4.7服务特征值写268

    15.4.8服务订阅269

    6章Bonjour协议270

    16.1Bonjour服务命名规则271

    16.2Bonjour协议API栈271

    16.3Bonjour核心流程271

    16.3.1服务发布272

    16.3.2服务发现272

    16.3.3地址解析273

    16.4Bonjour编程273

    16.4.1服务发布273

    16.4.2服务发现274

    16.4.3直接使用Bonjour进行数据发送274

    16.4.4需要注意的问题275

    7章系统服务276

    17.1服务处理流程277

    17.2服务定义277

    17.3服务提供方编程279

    17.3.1实现服务功能接口279

    17.3.2声明服务280

    17.3.3注册服务281

    17.3.4测试服务功能281

    17.4服务使用方编程282

    17.4.1注册数据类型282

    17.4.2菜单有效性校验282

    17.4.3发送数据到剪贴板283

    17.4.4从剪贴板读取结果数据283

    8章XPC服务284

    18.1XPC架构284

    18.2XPC编程实现285

    18.2.1XPC服务接口对象285

    18.2.2XPC服务方编程285

    18.2.3XPC服务请求方编程287

    18.2.4XPC服务接口反向调用288

    9章消息推送290

    19.1本地消息通知290

    19.1.1注册本地消息通知290

    19.1.2实现本地消息代理协议方法291

    19.1.3取消本地通知291

    19.1.4程序控制发送消息通知292

    19.2远程消息通知292

    19.2.1推送消息的处理流程292

    19.2.2请求消息推送注册293

    19.2.3设备293

    19.2.4推送消息接收293

    19.2.5提供者消息发送294

    19.2.6消息格式294

    19.2.7Feedback服务295

    19.2.8消息推送环境的证书配置295

    19.2.9推送消息的发送296

    第20章多文档应用298

    20.1文档应用中的关键对象298

    20.1.1文档控制器298

    20.1.2文档模型299

    20.1.3文档窗口控制器299

    20.2创建基于文档的工程299

    20.2.1DocumentTypes300

    20.2.2ExportedUTIs301

    20.2.3文档编程模板工程301

    20.3wrapper方式读取文件303

    20.3.1创建NSFileWrapper管理文件304

    20.3.2从NSFileWrapper实例读取内容304

    20.3.3支持NSFileWrapper文件的工程配置305

    20.3.4完整的FileWrapper工程示例305

    20.4文档处理流程309

    20.4.1新建文档流程309

    20.4.2打开文档流程309

    20.4.3保存文档流程310

    20.4.4导出文件流程310

    20.5文档应用开发步骤310

    20.6文档应用中的撤销/重做支持311

    20.7文档应用管理个人档案312

    20.7.1个人档案数据模型312

    20.7.2文档数据以普通文件方式存储313

    20.7.3文档数据以wrapper方式存储316

    第21章iCloud同步320

    21.1容器320

    21.2iCloud数据存储321

    21.2.1iCloud文档数据处理流程321

    21.2.2iCloud文档本地目录323

    21.3键值存储324

    21.3.1键值存储接口324

    21.3.2键值存储324

    21.3.3键值存储数据变化通知325

    21.3.4键值存储处理流程325

    21.4iCloud开发前准备工作325

    21.5容器数据在多个App间共享327

    21.5.1键值存储数据的App间共享访问327

    21.5.2文档数据的App间共享访问328

    21.6数据冲突328

    21.6.1键值数据冲突328

    21.6.2文档类型数据冲突328

    第22章CloudKit329

    22.1使用Dashboard后台管理数据330

    22.2容器共享332

    22.3创建记录结构333

    22.4CloudKit数据操作334

    22.4.1保存数据334

    22.4.2删除数据336

    22.4.3查询数据336

    22.4.4数据关联reference337

    22.4.5批量查询数据操作337

    22.5订阅数据变化通知338

    22.5.1创建订阅338

    22.5.2注册消息推送338

    22.6生产环境部署339

    第23章CoreData340

    23.1CoreData对象栈341

    23.2在项目中使用CoreData341

    23.2.1数据增加345

    23.2.2数据删除346

    23.2.3数据修改346

    23.2.4数据查询346

    23.3模型间关系347

    23.3.1一对一347

    23.3.2一对多348

    23.3.3多对多348

    23.4使用Bindings绑定管理对象350

    23.5撤销/重做操作的支持353

    23.6版本升级迁移354

    23.6.1轻量级迁移354

    23.6.2基于模型映射的迁移357

    第24章HTTP网络编程360

    24.1简单的数据请求361

    24.1.1使用系统默认方式创建URLSession361

    24.1.2使用自定义的代理方法创建URLSession362

    24.1.3创建URLSession使用POST方式传递数据363

    24.2文件下载364

    24.2.1创建下载任务364

    24.2.2实现下载代理协议364

    24.3文件上传365

    24.3.1流式文件上传客户端代码编写365

    24.3.2表单文件上传客户端代码编写366

    24.4缓存368

    24.5Cookie管理369

    24.5.1Cookie编程370

    24.5.2Cookie的一些使用场景370

    24.6断点续传371

    24.7基于URLSessionDataTask封装的网络处理工具类372

    24.7.1网络处理工具类实现分析372

    24.7.2HTTPClient工具类实现373

    第25章多线程377

    25.1GCD377

    25.1.1分发队列377

    25.1.2GCD多线程编程378

    25.1.3GCD实际使用的例子382

    25.2OperationQueue384

    25.2.1BlockOperation384

    25.2.2Operation385

    25.2.3设置任务间的依赖386

    25.2.4设置Operation执行完的回调387

    25.2.5取消任务387

    25.2.6暂停或恢复队列的执行387

    25.2.7任务执行的优先级387

    25.3Thread388

    25.3.1线程创建方式388

    25.3.2Thread类中的关键方法和属性389

    25.3.3线程中的共享资源保护390

    第26章事件循环393

    26.1RunLoop的模式393

    26.2RunLoop类394

    26.3RunLoop的活动状态395

    26.4定时器396

    26.5RunLoop中的输入源397

    26.6RunLoop事件处理流程398

    26.7RunLoop使用场景398

    第27章绘图技术399

    27.1绘图上下文399

    27.2坐标系统399

    27.2.1笛卡儿坐标399

    27.2.2屏幕坐标与本地坐标400

    27.2.3坐标变换400

    27.3颜色与透明度403

    27.3.1颜色模型和颜色空间403

    27.3.2创建颜色403

    27.3.3在绘图上下文中使用颜色404

    27.3.4从系统颜色面板获取颜色的方式404

    27.4绘图状态405

    27.5图像406

    27.5.1图像内部缓存406

    27.5.2图像大小406

    27.5.3图像的坐标系统406

    27.5.4图像绘制方法407

    27.5.5图像创建或加载407

    27.5.6屏幕图像的捕获408

    27.5.7图像的格式转换409

    27.6阴影和渐变409

    27.6.1阴影409

    27.6.2渐变410

    27.7文本绘制413

    27.7.1文本属性参数413

    27.7.2String的绘制方法413

    27.8使用路径绘图414

    27.8.1路径的样式415

    27.8.2点418

    27.8.3线418

    27.8.4多边形418

    27.8.5矩形418

    27.8.6圆角矩形419

    27.8.7圆和椭圆419

    27.8.8弧形419

    27.8.9贝塞尔曲线420

    27.9绘图的性能优化420

    第28章核心动画422

    28.1动画的产生过程422

    28.2层423

    28.2.1视图和层423

    28.2.2层的坐标系统424

    28.2.3层的时间系统425

    28.2.4层的对象树425

    28.2.5层级管理方法426

    28.2.6层的内容426

    28.2.7层的深度427

    28.2.8层的透视投影427

    28.3层动画428

    28.3.1隐式动画428

    28.3.2显式动画429

    28.4核心动画对象430

    28.4.1动画相关类431

    28.4.2协议433

    28.4.3辅助类435

    28.4.4事务436

    28.5动画的控制437

    28.5.1隐式动画的产生过程437

    28.5.2隐式动画的动作定义438

    28.5.3动画结束通知438

    28.5.4动画的暂停和恢复439

    28.6macOS中的属性动画439

    28.6.1属性动画440

    28.6.2动画上下文对象440

    28.6.3自动布局动画441

    28.7系统动画与核心动画的对比441

    28.8动画编程示例442

    28.8.1关键帧动画442

    28.8.2分组动画444

    28.8.3转场动画444

    28.9动画性能445

    28.10系统专有层446

    28.10.1渐变层446

    28.10.2形状层447

    28.10.3文本层448

    28.10.4分片层448

    28.10.5副本层449

    28.10.6发射层450

    28.10.7变换层452

    第29章多代理455

    29.1多代理与代理和通知的比较455

    29.1.1代理方式实现455

    29.1.2通知456

    29.1.3多代理456

    29.2多代理的实现457

    29.2.1Objective-C中多代理实现技术457

    29.2.2使用消息转发机制进行优化457

    29.2.3XMPPFramework458

    29.3聊天列表示例459

    29.3.1主要的视图控制器459

    29.3.2联系人模型类460

    29.3.3多代理管理类460

    29.3.4多代理的注册461

    29.3.5多代理的通知462

    第30章数据转换464

    30.1转换器基类465

    30.2系统实现的转换器465

    30.3绑定中使用的转换器466

    30.3.1类型转换器的实现和注册466

    30.3.2实现模型类467

    30.3.3绑定ComboBox控件到模型类468

    30.4实现自定义转换器的步骤469

    30.5使用转换器分离数据转换逻辑469

    第31章框架471

    31.1框架与静态库471

    31.2创建框架工程471

    31.2.1接口定义471

    31.2.2头文件引用声明472

    31.2.3使用框架473

    31.2.4框架的加载路径476

    31.2.5框架的签名问题478

    第32章应用沙盒化479

    32.1macOS沙盒机制479

    32.2应用沙盒配置信息479

    32.3文件沙盒编程481

    32.3.1设计界面481

    32.3.2App启动处理481

    32.3.3打开文件处理流程482

    32.3.4保存文件483

    32.3.5应用沙盒配置483

    32.3.6作用域安全的书签484

    32.3.7保存打开的文件URL的书签484

    32.3.8应用启动时通过URL的书签获取文件shou权484

    第33章数据导航视图487

    33.1DataNavigationItem的设计487

    33.1.1DataNavigationItem基类488

    33.1.2DataNavigationButtonItem488

    33.1.3DataNavigationTextItem488

    33.1.4DataNavigationFlexibleItem489

    33.2DataNavigationView接口和属性489

    33.2.1接口489

    33.2.2内部属性489

    33.3DataNavigationView代码实现490

    33.3.1item配置490

    33.3.2创建视图491

    33.3.3自动布局492

    33.3.4更新文本视图的方法494

    33.4使用DataNavigationView494

    第34章表格数据管理控制器497

    34.1表格列的动态配置497

    34.1.1表列定义的模型498

    34.1.2NSTableColumn类的扩展499

    34.1.3NSTableView类的扩展499

    34.1.4代码动态配置表列的表数据导航控制器500

    34.2实现用代码创建的表格和用xib创建表格的兼容504

    34.3表格的数据代理505

    34.3.1数据集管理操作接口505

    34.3.2数据源实现507

    34.3.3动态创建表格内容的数据代理方法507

    34.3.4表内容的编辑处理511

    34.3.5TableDataDelegate的使用512

    34.4数据列排序513

    34.5数据行拖放交换顺序514

    34.6数据分页显示控制515

    34.6.1分页控制器515

    34.6.2分页导航视图517

    34.6.3分页数据获取519

    34.7表格数据的增删编辑操作519

    34.7.1增加数据519

    34.7.2删除数据520

    34.7.3编辑表数据521

    第35章自动化小工具522

    35.1图片资源适配自动化工具522

    35.1.1实现思路522

    35.1.2工程实现524

    35.2国际化527

    35.2.1App语言国际化的过程527

    35.2.2自动化的思路530

    35.2.3Xcode工程文件的编辑和修改531

    第36章iPhone利用蓝牙控制Mac534

    36.1控制的主要流程分析534

    36.2macOS服务器端535

    36.2.1XXXPeripheralService服务类535

    36.2.2macOS端界面开发537

    36.2.3Mac锁屏状态通知538

    36.2.4控制Mac电脑的系统命令和脚本539

    36.2.5macOS端接收iOS端的命令处理540

    36.3iOS控制端541

    36.3.1XXXCentralClient类541

    36.3.2iOS界面开发543

    第37章SQLite数据库编程546

    37.1FMDB介绍546

    37.2数据库操作接口封装548

    37.2.1数据库管理对象548

    37.2.2数据访问对象549

    37.2.3MDAO对象551

    37.2.4数据模型对象552

    37.2.5具体使用553

    37.3数据库加密554

    37.3.1获取支持加密的SQLite3版本554

    37.3.2加密数据库555

    37.3.3操作加密数据库556

    37.4获取SQLite元数据556

    37.5模板引擎559

    37.5.1Xcode中的模板560

    37.5.2模板引擎处理流程560

    37.6表模型自动化代码生成561

    37.6.1模板文件定义561

    37.6.2代码实现562

    第38章开发一个完整的macOS应用564

    38.1制定目标564

    38.2开发自己的应用564

    38.3主界面设计564

    38.3.1主窗口控制器565

    38.3.2分栏页面控制器566

    38.3.3左边导航列表页的设计与实现567

    38.3.4分栏右部界面570

    38.3.5详细界面设计571

    38.4工具栏设计572

    38.5菜单设计574

    38.5.1系统菜单574

    38.5.2上下文菜单575

    38.6应用偏好设置577

    38.7页面控制器的核心流程578

    38.8用户体验的一点改进582

    38.9发布应用准备583

    38.9.1发布到非应用商店渠道583

    38.9.2发布到应用商店584

    后记586

    售后保障

    最近浏览

    猜你喜欢

    该商品在当前城市正在进行 促销

    注:参加抢购将不再享受其他优惠活动

    x
    您已成功将商品加入收藏夹

    查看我的收藏夹

    确定

    非常抱歉,您前期未参加预订活动,
    无法支付尾款哦!

    关闭

    抱歉,您暂无任性付资格

    此时为正式期SUPER会员专享抢购期,普通会员暂不可抢购