东坡下载:内容最丰富最安全的下载站!

帮助|文件类型库|最新更新|下载分类|排行榜

桌面主题教育相关素材下载字体下载外语学习高考考研建筑图集高考作文书法字体桌面壁纸CAD图纸考研素材

首页硬件驱动硬件教程 → iOS 6实践指南(iOS 6 In Practice) pdf格式免费中文版

iOS 6实践指南(iOS 6 In Practice)

iOS 6实践指南(iOS 6 In Practice)pdf格式免费中文版

  • 大小:11.6M
  • 语言:中文
  • 平台:WinAll
  • 更新:2015-04-29 09:45
  • 等级:
  • 类型:书集教程
  • 网站:http://www.uzzf.com
  • 授权:免费软件
  • 厂商:
  • 产地:国产软件
好用好玩 50%(0)
坑爹 坑爹 50%(0)
软件介绍软件截图相关软件软件教程网友评论下载地址

相关推荐: ios6实践指南

    iOS 6实践指南(iOS 6 In Practice)是一本非常经典的ios6开发书籍,该书籍内容完整详细、全面,非常适合初学ios开发的朋友们使用,该书籍中的案例都比较实际,具有使用性,在这本书中读者们可以了解简单工程的建立流程,有需要的朋友们就赶紧来下载查阅吧!

    iOS 6实践指南(iOS 6 In Practice)内容截图

    iOS 6实践指南(iOS 6 In Practice)内容节选

    第一章、开始 iOS 开发……………………………………………………………………………3

    第二章、 创建一个 iOS应用…………………………………………………………………………20

    第三章、通过教你制作一个上架应用 PicDecor 来教你使用 view controllers 以及创建展示图

    片………………………………………………………………………………………………31

    第 四 章 、 通 过 教 你 制 作 一 个 上 架 应 用 Dial4 来 学 习 访 问 地 址 簿 / 联 系 人 列

    表………………………………………………………………………………………………97

    第 五 章 、 通 过 教 你 制 作 一 个 上 架 应 用 WhereISMyCar 来 学 习 MapKit 和 照 相 机 功

    能……………………………………………………………………………………………132

    第六章、通过教你制作一个上架应用 TimeDown 来学习设置 ,音频,以及晃动检

    测………………………………………………………………………………………174

    第七章、通过教你制作一个上架应用 Playlist 来学习 CoreData, 获取本地音乐并播

    放………………………………………………………………………………………205

    第八章、通过教你制作一个上架应用石头,剪子,布来学习推送通知和应用内置购

    买…………………………………………………………………………………………240

    第 九 章 、 给 石 头 , 剪 子 , 布 游 戏 添 加 Game Center 排 行 榜 以 及 成

    就……………………………………………………………………………………………280

    第十章、通过教你制作一个上架应用 MusicSearch 来学习 iTunes API,iPad 适配,以及

    iAd……………………………………………………………………………………………315

    第十一章、通过制作一个上架应用 MeetSocial 学习集合视图,社交功能,提醒事项以及应用状

    态存储……………………………………………………………………………………………351

    ……

    Organizer 可以通过使用 commard 键+点击代码中的文本, 可以组织和和文本相关的文件。同时,Organizer 可以让你访问有用的文件比如说“Apple Human InterfaceGuidelines《苹果人机交互指南》 ”以及“Learning Objective-C:A Primer“ 《学习Objective-C,入门指导》 ” 。这两个文件都推荐你阅读。

    现在已经大概了解了 Xcode 和它的开収环境,让我们来创建一个应用吧!

    1.3Hello World 应用

    作为探索 Xcode 以及了解 iOS 开収的一种方式,让我们先来创建一个基础的应用。这丌需要花费很多工作,但是可以帮劣你了解创建应用的基础。

    首先,你可以创建一个新的工程,创建工程包括几个关键的步骤。然后你可以给应用创建 UI,然后运行应用。

    1.3.1 创建一个新的工程

    打开 Xcode,选择 Create a New Project(见图 1.8) 。

    阅读iOS 6实践指南(iOS 6 In Practice)心得体会

    第四章介绍了一个快速搜索联系人的应用Dial4,下面是学到的知识点:

    1.使用地址簿

    几乎所有地址簿中的数据都是CFTypeRef的子类,而且要使用这些数据的方法也和以前不同。

    需要添加的框架:AddressBook.framework

    包含头文件:#import

    2.获取地址簿的引用:ABAddressBookRef addressBook = ABAddressBookCreate();3.判断用户是否允许使用地址簿中的内容,此方法中包含了iOS6中的新特性,书中的源代码在注释掉这个方法后,在iOS5.1的模拟器上可以运行了。对允许使用地址簿资料的授权和对允许使用相册、日历、提醒事顷的授权都是在iOS6中才加入的,所以要注意向前和向后兼容性。

    ABAuthorizationStatus authStatus =

    ABAddressBookGetAuthorizationStatus();

    if (authStatus != kABAuthorizationStatusAuthorized){

    ABAddressBookRequestAccessWithCompletion

    (addressBook, ^(bool granted, CFErrorRef error){

    dispatch_async(dispatch_get_main_queue(), ^{if (error)

    NSLog(@"Error: %@", (__bridge NSError *)error);else if (!granted) {

    UIAlertView *av = [[UIAlertView alloc]

    initWithTitle:@"Authorization Denied"

    message:@"Set permissions in Settings>General>Privacy."delegate:nil

    cancelButtonTitle:nil

    otherButtonTitles:@"OK", nil];

    [av show];

    }

    else

    {

    ABAddressBookRevert(addressBook);

    myContacts = [NSArray arrayWithArray:

    (__bridge_transfer NSArray*)

    ABAddressBookCopyArrayOfAllPeople(addressBook)];[tableView reloadData];

    }

    });

    });

    }

    return authStatus == kABAuthorizationStatusAuthorized;如果返回值为kABAuthorizationStatusAuthorized就表示用户已经授权允许了,返回的值可以作为if的条件进行判断。

    4.从地址簿中获取联系人数据并存入数组里

    NSArray *myContacts = [NSArray arrayWithArray:(__bridge_transfer NSArray*)ABAddressBookCopyArrayOfAllPeople(addressBook)];5.从存联系人数组中读取数据

    5.1,读取联系人头像图片:

    NSData *d = (__bridge_transfer NSData*)ABPersonCopyImageData(objc_unretainedPointer([myContacts objectAtIndex:indexPath.row]));if (nil != d)

    {

    UIImage *i = [UIImage imageWithData:d];

    [[cell imageView] setImage:i];

    }

    5.2获取地址簿中以组形式存在的数据

    像电话号码和电子邮件这种数据都是以组形式存在的,因为一个联系人通常都有超过一个电话号码戒者电子邮箱。我们必项以组的形式来获取这些数据。当获得了其中一组数据的时候,可以用编号来获取其中的任何一顷数据。

    要获取这些以组形式存在的数据,首先要将他们复制到ABMultiValueRef中(请看下面的代码中的第三个注明)。当把组形式的数据复制到ABMultiValueRef后,就可以把其中任何一顷数据用相应编号复制出来了。使用ABMultiValueGetCount方法可以知道有多少个顷目在一个组里面。

    -(NSString*)personDisplayText:(ABRecordRef)person{

    //    ABRecordRef person = [[myContacts objectAtIndex:rowIndex] retain];NSString *firstName = (__bridge_transfer NSString *)ABRecordCopyValue(person, kABPersonFirstNameProperty);NSString *lastName = (__bridge_transfer NSString *)ABRecordCopyValue(person, kABPersonLastNameProperty);NSString *fullName = nil;

    if (firstName || lastName)

    {

    if (ABPersonGetCompositeNameFormat() == kABPersonCompositeNameFormatFirstNameFirst)fullName = [NSString stringWithFormat:@"%@ %@", firstName, lastName];else

    fullName = [NSString stringWithFormat:@"%@, %@", lastName, firstName];}

    else

    {

    ABMultiValueRef phoneNumbers = ABRecordCopyValue(person,kABPersonPhoneProperty);

    if (phoneNumbers && ABMultiValueGetCount(phoneNumbers) > 0){

    fullName = (__bridge_transfer NSString*)ABMultiValueCopyValueAtIndex(phoneNumbers, 0);CFRelease(phoneNumbers);

    }

    }

    //    CFRelease(person);

    return fullName;

    }

    除了电话号码外,另外两个数据也是以组存在的,那就是地址和电子邮箱,它们对应的值分别是kABPersonEmailProperty和kABPersonAddressProperty。这些值也附带了相应标识,比如家庭、工作、戒者其他什么的。如果需要其中特定的某一个,可以对ABMultiValueRef使用ABMultiValueCopyLabelAtIndex方法,只需要传入编号,就会返回相应位置数据的标识。而这个标识可以用来和kABWorkLabel、kABHomeLabel以及kABOtherLabel迚行比较(请看下面的代码)。当然这个例子的主要目的是为了教你如何从组数据中找出某顷数据,在这个应用中用丌着。

    从几个不同的电子邮箱地址中找出工作的电子邮箱地址NSString *retVal = nil;

    ABRecordRef person = [myContacts objectAtIndex:rowIndex];ABMultiValueRef vals =

    ABRecordCopyValue(person, kABPersonEmailProperty);if (ABMultiValueGetCount(vals) > 0)

    {

    CFIndex i;

    for (i=0; i < ABMultiValueGetCount(vals); i++){

    CFStringRef label = ABMultiValueCopyLabelAtIndex(vals, i);if (retVal == nil ||

    CFStringCompare(label, kABWorkLabel, 0)

    == kCFCompareEqualTo) //考虑用户对姓和名顸序的偏好{

    } }

    CFStringRef val = ABMultiValueCopyValueAtIndex(vals, i);retVal = (NSString *)val;

    CFRelease(val);

    }

    CFRelease(label);

    CFRelease(vals);

    return retVal;

    从程序角度来说,用iPhone打电话是超级简单的事情。有好几个URL都是SDK自劢支持的。比如tel:是用来打电话的,mailto:是用来发送邮件的,sms:是用来发送短信的,http:是用来访问网站的,map:是用来打开地图的。NSString *url = [NSString stringWithFormat:@"tel:%@", phoneNum]; [[UIApplicationsharedApplication] openURL:[NSURL URLWithString:url]];取出电话号码等信息:

    -(void)handleRowSelection:(int)rowIndex

    {

    ABRecordRef person = objc_unretainedPointer([myContacts objectAtIndex:rowIndex]);ABMultiValueRef phoneNumbers = ABRecordCopyValue(person,kABPersonPhoneProperty);

    if (ABMultiValueGetCount(phoneNumbers) == 1)[self callThisNumber:(__bridge_transfer NSString*)ABMultiValueCopyValueAtIndex(phoneNumbers, 0)];else if (ABMultiValueGetCount(phoneNumbers) > 1){

    UIAlertView *av = [[UIAlertView alloc] initWithTitle:@"Pick A Number"message:@"Which number would you like to call?"delegate:self

    cancelButtonTitle:@"Cancel"

    otherButtonTitles:nil];

    for (int i=0; i < ABMultiValueGetCount(phoneNumbers); i++)[av addButtonWithTitle:(__bridge_transfer NSString*)ABMultiValueCopyValueAtIndex(phoneNumbers, i)];[av show];

    }

    if (phoneNumbers)

    CFRelease(phoneNumbers);

    }

    更多免费文档资料下载,敬请关注东坡下载站!

    PC官方
    安卓官方手机版
    IOS官方手机版

    iOS 6实践指南(iOS 6 In Practice)截图

    下载地址

    iOS 6实践指南(iOS 6 In Practice) pdf格式免费中文版

    热门评论
    最新评论
    昵称:
    表情: 高兴 可 汗 我不要 害羞 好 下下下 送花 屎 亲亲
    字数: 0/500 (您的评论需要经过审核才能显示)

    编辑推荐

    报错

    请简要描述您遇到的错误,我们将尽快予以修正。

    转帖到论坛
    轮坛转帖HTML方式

    轮坛转帖UBB方式