导航
一、kick off
A、苹果推出了iOS7,他们希望开发者打造的apps能够更具有吸引力,首先是第一印象要好,App Store的截图制作就要好。
在开发软件的时候,应该注重字体的颜色和图像,要用透明,要注重细节。
要更有效率地使用CPU,GPU。结合最新的API去打造最新的特征,抓好特征才能够脱颖而出。
苹果给出的IOS视觉效果与技术结合比较好的软件:WWF,Procreate。
B、iOS7的五个新特征
1.A7处理器。
苹果在芯片上进行了优化,64位编码,是未来的趋势。开发apps要发挥出A7处理器强大的性能。做的比较好的软件有:djay2, SketchBook Mobile,Infinity Blade3.
2. M7
提供更好的加速器,更精确识别移动等等。做的比较好的软件有:Argus。MotionAware。
3.iBeacon
苹果很看中这个的功能,大会中多次强调。 多用于室内,进入到一定区域时,可以想用户推送信息。
比如超市,博物馆。当天的大会也用到了这个功能,进入到会场附近,给开发者推送了大会的push。
4.Always Ready。
永久在线,多任务,后台的上传下载功能。
5. Passcodes。安全信息。
二、大会内容
A.Session 1:iOS7 上的设计
主要的原则:
1.更清晰,要加强沟通,对话。要简洁,容易理解。 比如:雅虎天气。
2.要以内容为主,突出内容。 让文字可读,清晰,更突出。 背景要半透明。
3.要设计的有深度感。 创造活泼的用户体验,让用户的注意力专注。
注意:
1.做产品设计时,要用简单的词语,不要用书面用语。
2.用户界面不要喧宾夺主,要突出内容。不要让界面抢了内容的风头。
3.App里最好在空间上设计的有关联,设计的动画效果要连续连贯。
iOS 7设计建议:
1.要重新设计icon,因为形状有细微的变动。
2.tabbar很重要,要看起来漂亮。
3.颜色的设计非常非常重要,哪些颜色是按钮,哪些是沟通的。
4.NavigationBar,title的颜色跟按钮要区分。
5.去掉按钮的边框,只用文字,或者加上边框线。
6.要半透明和虚化。目的是更清晰,更突显内容。注意力还保持在app中,不被转移。
7.iOS 7要给人的感觉,动画要是有动态的,立体化的,有时差,层次感。
B.Session 2:iOS 7新特征
1.视差效果,Motion Effects
比如,手机倾斜时候,UIAlert的位置变化,偏移。
关键代码:
UIMotionEffect
UIInterpolatingMotionEffect *xAxis;
UIMotionEffectGroup *group;
【UIView addMotionEffect:group】;
2.要增加画面的真实感:引力,撞击,发散。
这些不是打造游戏的,是专门为应用设计的,增加界面的厚实感。比如:iOS 7屏保切换照相机时松手的重力效果。
关键词与代码:
InteractiveTransitioning UIPercentDrivenInteractiveTransition
UIDynamicAnimator,反弹,吸引力效果。
UIdynamicItemBehavior
UISnapBehavor
3.UIVIewController,iOS的灵魂,有了一些变动。
关键代码:
self.edgesForExtendedLayout = UIRectEdgeAll; 内容在导航栏之下。
self.automaticallyAdjustScrollViewInsets = YES;
UIStatusBarStyleDefault
-(bool) perfersStatusBarHidden.
4.Text Kit
UIkit的一部分,用于文字的排版。
关键代码:
a、Text Styles
b、Dynamic Type 改变内容的大小。 只有内容的字体会受到影响,导航栏不会受到影响。
c、Font Descriptors UIFontDescriptor 包含着字体的所用东西
C. Session 3:A7 64bit & iOS 7 SDK
需要注意的:
1、不同设备之间分享数据,往iCloud中存,写32位的话,就读32位。 写64位就读64位。
2、64位的会占用更多的内存。 64位效率更快。
Adopting 64 bit
Update Architectures - Update Libraries - Fix Issues - Test,test,test!
Building iOS7
怎样在使用iOS 7的时候,同时支持iOS 6?
1、Frameworks and classes
通知注册之前加判断 if(&tongzhi != nil) then …
2、Methods
SEL selector = @selector(addMotionEffect:);
if ([self.view respondsToSelector:selector])
{
UIMotionEffect *effect = 【self makeNewParallaxMotionEffect】;
}
3、 Capabilities
4、Designs
5、Architectures
#if __LP64__
代码只在64位上运行
#else
代码在32位上运行
#endif
但是上面的这些都不直白,不干净。 下面介绍一些苹果认为更好的方法。
1.Class Clusters 子类化
根据版本用不同的子类。以后不用可以直接删掉子类。
2. Categories
用分类,打造一个跟新名字相似的名字。也用responds封起来
UIMotionEffect *effect = 【self makeNewParallaxMotionEffect】;
[self.view addMotionEffect:effect];
在分类中,去判断版本,用不同的方法。
D.Session 4:新技术,提高用户体验
a、减少app的大小。
1.清理自己的app。打开你的压缩包。去掉你的垃圾文件。过时的文件删除。Use Resizable iMages。
2.压缩 Video - H.264 Audio - 22.05赫兹 大的图片用 .jpg
b、后台下载,ios管理,支持暂停继续取消。
关键词:
NSURLSessionConfiguration *config = [ NSURLSessionConfiguration backgroundSessionConfiguration: @“”];
NSURLSession
NSURLSessionDownloadTask *task 。
c、多任务
关键词: Background Fetch
d、iBeacon
蓝牙传出信号,IOS靠近信号,就会收到通知。
后台不可以使用ibeacon,设备必须解锁。 在真实的环境中要测试。
苹果很看重这个。
E.Session 5:苹果开发小技巧
a、Xcode5
1..m中添加方法,不需要写返回值,系统就会出默认选项
2.Edit in Scope:同时修改相同变量名
b、模拟器
1.呼叫状态栏,调试界面。
2.主动内存警告
3.调试-混合层
原帖地址:http://www.cocoachina.com/bbs/read.php?tid=169601