<苹果开发之Cocoa编程>第4版 P87 创建一个to-do list应用程序,在文本框中输入任务.当用户单击Add按钮时,添加字符串到一个变长队列,新任务就出现在list的末尾. 关键点: 1.NSString 类型的变量去除首尾空格方法:[nsstringItem stringByTrimmingCharactersInSet: [NSCharacterSetwhitespaceAndNewlineCharacterSet]] 2.TableView控件重新加载数据的方法:[_table…
<苹果开发之Cocoa编程>第4版 P87 新建一个单窗口应用程序,设置某对象为窗口的委托,当用户调整窗口尺寸时,确保窗口高度为宽度的2倍. 需要实现的委托方法为:-(NSSize)windowWillResize:(NSWindow *)sender toSize:(NSSize)frameSize;第一个参数时重新调整尺寸的窗口,第二个参数时一个包含需要尺寸的C结构体. typedef struct _NSSize{ float width; float height; } NSSize…
第一章:什么是Cocoa 1.1 历史简介 1.2 开发工具:Xcode.Interface Builder(一个GUI构建工具).在它们内部,使用gcc为编译器来编译代码,并使用gdb来查找错误 1.3 语言Objective-C的代码由gcc编译-GUN C编译器.该编译器允许自由的在同一文件中混合C.C++及Ojbective-C代码GUN调试器——gdb,用来设置断点,运行时查看程序中变量的值 1.4 对象.类.方法和消息 对象就像C语言中的结构:它占用内存空间来保存自己的变量.这些变量…
一.KVC 键-值编码(Key - Value Coding, KVC)是通过变量名的读取和设置变量值的一种方法,将字符串的变量名作为key来引用.NSObject定义了两个方法(KVC方法)用于变量值得读取和设置:setValue:forKey; valueForKey:forKey; @interface Student:NSObject{ NSString *firstName; } Student *s = [[Student alloc] init]; //设置变量值 [s setVa…
第十八章:Image和鼠标事件 1.NSResponderNSView继承自NSResponder类.所有的事件处理方法都定义在NSResponder类中.NSResponder申明了如下方法:- (void)mouseDown:(NSEvent *)theEvent;- (void)rightMouseDown:(NSEvent *)theEvent;- (void)otherMouseDown:(NSEvent *)theEvent; - (void)mouseUp:(NSEvent *)t…
在Cocoa中使用NSUndoManager可以很方便的完成撤销操作.NSUndoManager会记录下修改.撤销操作的消息.这个机制使用两个NSInvocation对象栈. NSInvocation会把消息(选择器和接受者及参数)包装成一个对象,这个对象就是NSInvocation的实例.当一个对象收到它不理解的消息时,消息发送机制会在报出错误前检查该对象是否实现了forwardInvocation这个方法.如果实现了,就会将消息打包成NSInvocation对象,然后调用forwardInv…
如果你的Apple ID账号(可使用邮箱来注册)为Apple developer类型的话,登录之后是看不到Certificates, Indentifiers & Profiles信息的 Apple developer是最基础的账号类型,主要用来在App Store下载各种应用(包括xCode等开发工具和SDK库)及在iCloud上备份文件和照片 可通过点击下方的“Joining the Developer Program”链接,按照指引点击enroll按钮,付费99$/year之后,成为reg…
有一段时间没有认真总结和写博客了 前段时间找工作.进入工作阶段.比较少静下来认真总结,现在静下心来总结一下最近的一些心得 前言 AsyncSocket介绍 AsyncSocket详解 AsyncSocket示例 一.前言 公司的项目用到了Socket编程,之前在学习的过程当中,用到的更多的还是http请求的方式.但是既然用到了就必须学习一下,所以就在网上找一些例子,然后想自己写一个demo.可是发现很多写iOS Socket的博客并没有很详细的说明,也可能是大神们觉得其他东西都浅显易懂. 自己专…
一.前言 Unity3D是如今最火爆的游戏开发引擎,它可以让我们能轻松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型的互动内容.它支持2D/3D游戏开发,据不完全统计,目前国内80%的手机游戏都是用Unity3D开发. 由于Unity3D在开发过程中使用最多的是C# 语言,所以就要合理的使用C#提供的一些数据结构是非常有必要的,合理的选择数据结构可以加快开发速度,提高游戏运行性能,不合理的使用数据结构则会导致游戏运行性能降低,加大开发复杂程度! 先通过表格看看常用的数据结构: C#常用数据…
// //  main.m //  12 - 类的创建练习 // //  Created by vic fan on 16/7/9. //  Copyright © 2016年 李洪强. All rights reserved. // //练习: /* 一个人可以吃不同的食物,只要吃东西就会增加体重0.6,如果要是出 门遛弯,每走100步,体重减0.2,小于100步忽略不计. 请用面向对象思想实现. 思路: 类名:Person 属性:年龄(_age).体重(_weight).姓名(_name)…