真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

ios開發(fā)和mac開發(fā),ios開發(fā)需要mac嗎

Mac開發(fā)與iOS開發(fā)有哪些不同

Mac程序的開發(fā),基本上就是比iOS上更原始的版本,很凌亂,另外就是窗口什么的區(qū)別最大

我們提供的服務(wù)有:成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、太子河ssl等。為上千企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的太子河網(wǎng)站制作公司

以下是我之前記得筆記,在Xcode里寫的,不太好看。。。

//

// ViewController.m

// mac

//

// Created by 國棟 on 16/1/4.

// Copyright (c) 2016年 GD. All rights reserved.

//

#import "ViewController.h"

@implementation ViewController

#pragma mark 編寫Mac程序和iOS程序主要的不同

- (void)viewDidLoad {

[super viewDidLoad];

#pragma mark 坐標(biāo)系不同

#pragma mark 缺少一些組合方法

//iOS是在OS X系統(tǒng)的基礎(chǔ)上開發(fā)的,所以有很多更方便的地方,但Mac的框架不提供!

//比如,iOS中有一些常用的方法,Mac中沒有,比如

//iOS中UIButton 有addTarget:#(id)# action:#(SEL)#

forControlEvents:#(UIControlEvents)#方法,但NSButton只能一項(xiàng)的設(shè)置

/**如果Mac里沒有某個(gè)組合的方法,可以試試拆開用!**/

NSButton *button=[[NSButton alloc]initWithFrame:CGRectMake(100, 100, 100, 100)];

button.target=self;

button.action=@selector(click);

[self.view addSubview:button];

#pragma mark 沒有Label控件

//Label控件是用TextFiled實(shí)現(xiàn)的

//label.enabled=NO;

//label.bordered=NO;

//label.selectable=YES;

#pragma mark 沒有bounds,center

#pragma mark NSView沒有背景顏色,但NSClipView和其它有些控件有

[self.view setWantsLayer:YES];

[self.view.layer setBackgroundColor:[NSColor blueColor].CGColor];

#pragma mark imagename方法只適用于圖片文件在包里

//根據(jù)路徑獲取圖片[[NSImage alloc]initByReferencingFile:@"/Users/guodong/Desktop/Coding/mac/mac/636b17fb1f.png"];

#pragma mark ImageView可以設(shè)定animates editable屬性

//可以播放動(dòng)圖,可以刪除,可以拖放圖片上去

#pragma mark NSColorWell enable=yes 可以調(diào)色

#pragma mark NSScrollView默認(rèn)不接受鼠標(biāo)事件,用sv.contentView.frame調(diào)整內(nèi)容視圖的位置和大小

#pragma mark NSWindow

//Mac程序是可以有多個(gè)window的!

//設(shè)置當(dāng)前的主窗口

NSApplication *app=[NSApplication sharedApplication];//獲取程序?qū)ο?/p>

NSLog(@"%@",app.keyWindow);//keyWindow和mainWindow經(jīng)常是同一個(gè)window,它們?cè)诔绦騽偧虞d的時(shí)

候是還沒加載的,所以不能在viewDidLoad方法中設(shè)置!當(dāng)app處于不活動(dòng)的狀態(tài)或不能接受鍵盤值時(shí),也可能是空的

NSLog(@"%@",app.mainWindow);

NSWindow *window=app.keyWindow;

window.alphaValue=1;//設(shè)置窗口的透明度

window.backgroundColor=[NSColor clearColor];//設(shè)置背景顏色為透明

[window setStyleMask:1];//設(shè)置窗口的風(fēng)格是沒有邊框的,也可以在故事板中的窗口屬性中調(diào)

[window setFrame:CGRectMake(100, 100, 500, 500) display:YES animate:YES];//移動(dòng)窗口,立即刷新,動(dòng)畫效果

//創(chuàng)建一個(gè)新的窗口,注意窗口控制器應(yīng)當(dāng)是個(gè)全局的指針,否則窗口會(huì)立即被銷毀!

NSWindow *new=[[NSWindow alloc]initWithContentRect:CGRectMake(100,

100, 300, 300) styleMask:1 backing:NSBackingStoreRetained defer:NO];

new.backgroundColor=[NSColor redColor];

NSWindowController *wc=[[NSWindowController alloc]initWithWindow:new];

[wc showWindow:new];

[new setLevel:10];//設(shè)置窗口顯示的優(yōu)先級(jí)

#pragma mark Mac開發(fā)中,cell十分常見

//大概是在OS X簡化為iOS的過程中,很多控件被合并,簡化了。

//OS X中很多控件都有(類型的后綴)為cell的子控件,通常能調(diào)整title什么的

//總之,大多數(shù)控件都是組合成的,而且子控件都暴露在外面,非常麻煩

#pragma mark NSOpenPanel 彈出選擇文件用的控件

NSOpenPanel *openPanel=[NSOpenPanel openPanel];//獲取NSOpenPanel對(duì)象

//設(shè)置

[openPanel setCanChooseFiles:YES];

[openPanel setCanChooseDirectories:YES];

//[openPanel setAllowedFileTypes:[NSArray arrayWithObject:(NSString *)kUTTypeDirectory]];

[openPanel setAllowedFileTypes:@[@"mp3"]];//允許的類型

[openPanel setDirectoryURL:[NSURL fileURLWithPath:@"/Users/guodong/Desktop/song"]];//設(shè)置默認(rèn)路徑

[openPanel setAllowsMultipleSelection:YES];//允許按住shift/command多選

[openPanel runModal];//顯示,并且返回結(jié)果 0取消了,1確認(rèn)了

if ([openPanel runModal] == NSModalResponseOK) {

NSURL *url = [openPanel URL];

NSLog(@"%@",[openPanel filenames]);

}

#pragma mark 打開文件/文件夾的操作

[[NSWorkspace sharedWorkspace]openFile:@"/Users/guodong/Desktop/Tools"];//用默認(rèn)的程序打開文件/文件夾

[[NSWorkspace sharedWorkspace]openFile:@"/Users/guodong/Desktop/首頁 - 知乎.html" withApplication:@"Xcode"];//用指定的程序打開

//NSWorkspace可以做一些設(shè)計(jì)到其他App的操作,比如獲取活動(dòng)的app列表,隱藏其他app等

[[NSDocumentController

sharedDocumentController]openDocument:@"/Users/guodong/Desktop/Tools"];

//NSDocument應(yīng)該是 蘋果提供的網(wǎng)絡(luò)同步功能用的 大概

#pragma mark NSTableView

//content Mode 這玩意在代碼中好像沒辦法設(shè)置 設(shè)置Cell-Base/View-Base (必須設(shè)置)

//純代碼創(chuàng)建Cell-Base NSTableView

NSTableView *tableView;

tableView=[[NSTableView alloc]initWithFrame:CGRectMake(0, 0, 400, 300)];

tableView.delegate=nil;//代理

tableView.dataSource=nil;

//[tableView setAutosaveName:@"downloadTableView"];

//[tableView setAutoresizesSubviews:FULLSIZE];

//[tableView setBackgroundColor:[NSColor whiteColor]];

//[tableView setGridColor:[NSColor lightGrayColor]];

//[tableView setGridStyleMask: NSTableViewSolidHorizontalGridLineMask];

//[tableView setUsesAlternatingRowBackgroundColors:YES];

//[tableView setAutosaveTableColumns:YES];

//[tableView setAllowsEmptySelection:YES];

//[tableView setAllowsColumnSelection:YES];

NSScrollView *scrollView=[[NSScrollView alloc]initWithFrame:CGRectMake(0, 0, 400, 300)];

[scrollView setDocumentView:tableView];//設(shè)置內(nèi)容視圖

//[scrollView addSubview:tableView];雖然也能添加上,但是不能滑動(dòng)什么的

//[scrollView setBackgroundColor:[NSColor redColor]];

[self.view addSubview:scrollView];

//設(shè)定表頭

NSTableHeaderView *tableHeadView=[[NSTableHeaderView alloc] initWithFrame:CGRectMake(0, 0, 300, 20)];

[tableView setHeaderView:tableHeadView];

//以前不知道的。。。設(shè)定列,可以設(shè)定幾列,而且可調(diào)

NSTableColumn *column=[[NSTableColumn alloc] initWithIdentifier:@"column"];

[[column headerCell] setStringValue:@"column"];

//[[column headerCell] setAlignment:NSCenterTextAlignment];

[column setWidth:400];

[column setMinWidth:50];

[column setEditable:YES];

//[column setResizingMask:NSTableColumnAutoresizingMask | NSTableColumnUserResizingMask];

[tableView addTableColumn:column];

// Do any additional setup after loading the view.

/*創(chuàng)建Cell-Base NSTableView用的

-(NSInteger)numberOfRowsInTableView:(NSTableView *)tableView

{

return 100;

}

-(id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row

{

return @"ecwve";

}

*/

/*創(chuàng)建View-Base NSTableView用的,用代碼可能不行。。。

-(CGFloat)tableView:(NSTableView *)tableView heightOfRow:(NSInteger)row

{

NSLog(@"eww");

return 100;

}

-(NSView*)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row

{

NSView *cellView=[[NSView alloc]initWithFrame:CGRectMake(0, 0, 100, 20)];

NSTextField *textField=[[NSTextField alloc]initWithFrame:CGRectMake(0, 0, 100, 20)];

[textField.cell setTitle:@"wcvc"];

[cellView addSubview:textField];

return cellView;

}

*/

// Do any additional setup after loading the view.

}

-(void)click

{

NSLog(@"click");

}

- (void)setRepresentedObject:(id)representedObject {

[super setRepresentedObject:representedObject];

// Update the view, if already loaded.

}

@end

ios開發(fā)必須用mac嗎

iOS開發(fā)就是為裝有iOS系統(tǒng)的設(shè)備完成應(yīng)用軟件或游戲軟件的開發(fā),進(jìn)行iOS開發(fā)不一定非要用mac,也可以在Windows的環(huán)境下安裝一個(gè)mac虛擬機(jī),或者也可以使用黑蘋果。

蘋果IOS系統(tǒng)和Mac OS系統(tǒng)的差別

蘋果IOS系統(tǒng)和Mac OS系統(tǒng)的區(qū)別為:構(gòu)架不同、適用不同、移植不同。

一、構(gòu)架不同

1、蘋果IOS系統(tǒng):蘋果IOS系統(tǒng)基于ARM構(gòu)架。

2、Mac OS系統(tǒng):Mac OS系統(tǒng)基于X86\X86-64構(gòu)架。

二、適用不同

1、蘋果IOS系統(tǒng):蘋果IOS系統(tǒng)適用蘋果手機(jī)和ipad,電腦并不適用。

2、Mac OS系統(tǒng):Mac OS系統(tǒng)是蘋果公司為Mac系列產(chǎn)品開發(fā)的專屬操作系統(tǒng)。

三、移植不同

1、蘋果IOS系統(tǒng):蘋果IOS系統(tǒng)不能移植Mac OS系統(tǒng)的軟件。

2、Mac OS系統(tǒng):Mac OS系統(tǒng)能移植蘋果IOS系統(tǒng)的軟件。


分享名稱:ios開發(fā)和mac開發(fā),ios開發(fā)需要mac嗎
標(biāo)題URL:http://weahome.cn/article/dseiojo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部