COCOA® PROGRAMMING FOR MAC® OS X (1)- Get Start

这个是Mac OS App开发学习的第一篇,希望是一个好的开始。

一、为什么要学习Mac OS App开发

  a)长时间做IOS开发,发现自己所做的局限在苹果的一些库上面,一些底层的API却是私有的,不利于自己对操作系统的理解,学习Mac OS 可以增加对底层系统的理解,OC也有更广泛的应用空间。

  b) 平时使用Mac 发现上面的一些软件并不好用,如果自己写的话,相信可以写出更好的。

  c) Mac OS开发和其它所有的开发工作都一样,除了编码层次上面,更希望提高自己宏观的软件设计能力、扩展眼界,提高解决问题的能力。

 

二、学习路线

  a)为了提高效率,读完一章之后,记录所读内容。

  b)手写对应代码

 

三、Get Start(第二章)

  1、XIB 可以理解为XML Interface Builder 文件格式为XML的界面,NIB是XIB编译之后的二进制产物,NIB是NeXT Interface Builder。

  2、效果

    

    

  3、代码解释

    

复制代码
 1 @interface ViewController ()
 2 
 3 @property (weak) IBOutlet NSTextField *randomLabel;
 4 
 5 
 6 @end
 7 
 8 @implementation ViewController
 9 
10 -(void)awakeFromNib
11 {
12     [_randomLabel setObjectValue:[[NSDate date] description]];
13 }
14 
15 - (void)viewDidLoad {
16     [super viewDidLoad];
17 
18     // Do any additional setup after loading the view.
19 }
20 
21 - (void)setRepresentedObject:(id)representedObject {
22     [super setRepresentedObject:representedObject];
23 
24     // Update the view, if already loaded.
25 }
26 
27 - (IBAction)seedReset:(id)sender {
28     
29     
30     // Seed the random number generator with the time
31     srandom((unsigned)time(NULL));
32     [_randomLabel setStringValue:@"Generator seeded"];
33     
34 }
35 - (IBAction)genRandom:(id)sender {
36     
37     int generated;
38     generated = (int)(random() % 100) + 1;
39     NSLog(@"generated = %d", generated);
40     // Ask the text field to change what it is displaying
41     [_randomLabel setIntValue:generated];
42 }
43 
44 @end
复制代码

  两个按钮连接Action,TextField连接Outlet

  

 

  代码在百度上,地址是:http://pan.baidu.com/s/1jG8DPhO

  

 

posted @   兜兜有糖的博客  阅读(392)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示