Mac开发狮子连弹第一弹

####1,创建工程,分为3步走,如图示意(本文针对有一定iOS开发经验的读者,不再一一赘述细节。ps:笔者虽然不是一个小白了,但是内心还是很白的。郑重声明:未成年人禁止入内!)

选择Mac模板

####2,填写demo信息 点击下一步,创建工程

填写数据创建工程

####3,这里会自动生成一个带故事板的工程,这里只需要在工程右侧拖一个tableview控件到控制器里,运行项目,就可以显示了。(这里搜索控件的时候,可以去掉类名的前缀,因为iOS和Mac的类名前缀是不一样的,好处你要自己感悟 UI打出来你是搜不到任何东西的,MacApp的类名前缀是NS开头,刚接触你的肯定有些不习惯)
选择故事板,拖控件

####4,IB连线添加一个tableview,直接连属性的时候,选中左边的tableview类,不要直接从视图上连,你会连到NSScrollView类。
IB连线

####5,设置tableview属性

设置属性

####6,设置cell为图标和文字的样式,并设置属性和标识

设置标识

设置样式属性

####7,运行后,效果如下图,到这里就成功了一半了。下面开始添加数据源
运行效果

####8,创建model,添加2个属性,一个是name,一个是appIcon
创建模型

####9,添加delegate和datasource是为了能打出tableview的方法,初始化数据源,这里我使用懒加载

- (NSMutableArray *)dataArray {
    if (_dataArray == nil) {
        _dataArray = [NSMutableArray arrayWithCapacity:0];
    }
    
    return _dataArray;
}

设置代理和数据源

@interface ViewController () <NSTableViewDelegate, NSTableViewDataSource>

####10,填充数据,这里我封装了一个方法获取数据,到这里就结束了。运行效果如下。

- (void)loadData {
    self.dataArray = [RBAppModel getDataArray];
    
    [self.tableView reloadData];
}

getDataArray方法

+ (NSMutableArray *)getDataArray {
    NSMutableArray *tempArray = [NSMutableArray arrayWithCapacity:0];
    
    RBAppModel *model1 = [[RBAppModel alloc] init];
    model1.name = @"QQ";
    model1.appIcon = @"QQ";
    [tempArray addObject:model1];
    
    RBAppModel *model2 = [[RBAppModel alloc] init];
    model2.name = @"微信";
    model2.appIcon = @"WeChat";
    [tempArray addObject:model2];
    
    RBAppModel *model3 = [[RBAppModel alloc] init];
    model3.name = @"支付宝";
    model3.appIcon = @"Alipay";
    [tempArray addObject:model3];

    
    return tempArray;
}

最终效果图
最终效果图

参考资料:链接地址(文中的MainMenu.xib文件的创建不是很详细,这里我也问了作者。现在这种方式的创建很麻烦,主要我不太习惯使用IB操作,有时间的话可以补充一下这种操作。目前我使用的是默认的故事板,程序已经配置好了)

细节补充:运行程序,点击关闭,在Dock中点击,程序不启动,必须手动退出才能启动。需要添加如下代码

- (BOOL)applicationShouldHandleReopen:(NSApplication *)sender hasVisibleWindows:(BOOL)flag {
    NSLog(@"%@", sender.windows);
    if (flag == NO) {
        NSWindow *window = sender.windows.firstObject;
        if (window) {
            [window makeKeyAndOrderFront:nil];
        }
    }
    
    return YES;
}

细节补充

优化:可以新增用户使用的App,添加App的名称和Icon。点击选中App,可以查看、预览、更换App名称和图标,也就是基本的增删改查。

源码地址:GitHub地址

以上只是个人看法,如有不对请更正,欢迎指教。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值