iOS 7.0新特性1

iOS 7的UI经过了重新设计。另外,iOS7中引入了新的动画系统,便于创建2D和2.5D的游戏。多任务支持提升,点对点通讯以及其他重要的特征使iOS7相对于以往的SDK来说发生了重大改变。

本文档汇总了iOS7中主要的新特性。

读者可以通过以下链接访问iOS7中所有的新API

iOS 7.0 API Diffs.

1.            用户接口变化

iOS 7 includes many new features intended to help you create great user interfaces.

新界面设计

<ignore_js_op>

利用iOS7 SDK编译的应用自动应用新的样子。

我们创建一个Single View Application,命名为HelloIOS7FromDevDiv

对应用程序图标进行简单配置:

<ignore_js_op>

再看模拟器中应用程序图标自动显示为iOS7的风格

<ignore_js_op>

如果View的大小和位置设置为Auto Layout,那么这些View会根据需要自动重新定位。但是,有可能还需要开发人员重新调整一下位置。类型情况,如果你自定义了应用程序的View,那么可能需要多而外的工作让它和新的系统界面保持一致性。

关于如何让你的应用程序利用iOS7的优势,请访问:

iOS 7 Design Resources.

UIKit 动态行为支持

应用程序可以设置UIView 对象和其他对象(遵从UIDynamicItem 协议)的动态行为属性。遵从UIDynamicItem协议的对象被称为dynamic item。动态行为可以提升用户体验,比如加速度动画。 UIKit支持以下类型的动态行为:

UIAttachmentBehavior 对象置顶两个dynamic item之间或者一个item和某个点之间的连接。当一个item(或者点)移动的时候,被连接的item也跟着移动。

UIAttachmentBehavior可以设为如下:

  • UICollisionBehavior 对象让dynamic items在置顶的范围内彼此碰撞。
  • UIGravityBehavior 对象设置一个重力向量。Dynamic item按照向量的方向加速移动直到和配置的item碰撞位置。
  • UIPushBehavior 对象设置一个连续的或者顺势的力向量。
  • UISnapBehavior 对象可以设置dynamic运动到某一个点。运动到某个点可以带有特效。比如,可以做到这样的效果:好像dynamic item连到弹簧上,弹回到弹簧的原点效果。

当把动态形态添加到animator对象后就可以生效,其中animator对象是 UIDynamicAnimator 类的实例。Animator提供了动态行为执行的环境。一个dynamic item可以包含多个动态行为,但是这些行为必须由同一个animator对象触发。

关于更多动态行为,请参考: UIKit Framework Reference.

Text Kit

Text Kit可以布局、显示段落、列、页面等;

Text Kit 包含一下新的扩展类:

关于 Text Kit更多信息,请访问: Text Programming Guide for iOS.

ios7新特性1-UI变化、UIKit动态行为支持与Text Kit新接口的更多相关文章

  1. 重新想象 Windows 8.1 Store Apps (91) - 后台任务的新特性: 下载和上传的新特性, 程序启动前预下载网络资源, 后台任务的其它新特性

    [源码下载] 重新想象 Windows 8.1 Store Apps (91) - 后台任务的新特性: 下载和上传的新特性, 程序启动前预下载网络资源, 后台任务的其它新特性 作者:webabcd 介 ...

  2. 【Java8新特性】一张图带你领略Java8有哪些新特性

    写在前面 很多小伙伴留言说,冰河你能不能写一些关于Java8的文章呢,看书看不下去,看视频进度太慢.好吧,看到不少读者对Java8还是比较陌生的,那我就写一些关于Java8的文章吧,希望对大家有所帮助 ...

  3. 如何给不支持新特性的浏览器打补丁(让老版本IE兼容新特性)

    一个非常棒的 JavaScript 框架叫做 Modernizr(http://www.modernizr. com),用于向缺少 HTML5/CSS3特性支持的浏览器打补丁.由 Alexander ...

  4. JDK8新特性03 Lambda表达式03_Java8 内置的四大核心函数式接口

    import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.functio ...

  5. servlet 3.0 的新特性之三对异步处理的支持

    一.异步处理 1. 什么是异步处理 原来,在服务器没有结束响应之前,浏览器是看不到响应内容的!只有响应结束时,浏览器才能显示结果! 现在异步处理的作用:在服务器开始响应后,浏览器就可以看到响应内容,不 ...

  6. ios7新特性--1

    1.用户界面的扁平化 2.UIKit 动态行为支持 应用程序可以设置UIView 对象和其他对象(遵从UIDynamicItem 协议)的动态行为属性.遵从UIDynamicItem协议的对象被称为d ...

  7. Atitit.jquery 版本号新特性attilax总结

    Atitit.jquery 版本号新特性attilax总结 1. Jq1.4 1 2. 1.5 1 3. 1.6 3 4. Jq1.7 3 ⒉提升了事件委派时的性能有了大幅度的提升.尤其是在ie7下: ...

  8. 从开发者角度解析 Android N 新特性!

    大清早看到 Google 官方博客发布 Android N 的开发者预览版,立马从床上跳起来开始仔仔细细的读起来. 从开发者角度来看,Android N 的更新并不算大.网上之前流传的一些 Andro ...

  9. Atitit. WordPress 4.2.2新特性对比 attilax总结

    Atitit. WordPress 4.2.2新特性对比 attilax总结 1. WordPress 2.9带来的新特性 1 2. WordPress3.0最为突出的五个新特征 2 3. WordP ...

随机推荐

  1. 使用QEMU调试Linux内核代码

    http://blog.chinaunix.net/uid-20729583-id-1884617.html http://www.linuxidc.com/Linux/2014-08/105510. ...

  2. getline和get的区别

    #include<iostream> #include<fstream> #include<cstring> using namespace std; int ma ...

  3. tuple类型的单词查询例子

    17.3 重写前面的TextQuery程序,使用tuple代替QueryResult类. TextQuery.h #ifndef TEXTQUERY_H #define TEXTQUERY_H #in ...

  4. 高性能爬虫为什么使用定制DNS客户端?

    DNS 解析是高性能网络爬虫的瓶颈,主要是因为: 1. 由于域名服务的分布式的特性,DNS解析可能需要多次的请求转发,有时需要几秒甚至更长的时间来解析出相应的IP 地址. 2. 现有的标准库对DNS解 ...

  5. linux mysql 授权以及 iptables开启3306

    mysql授权ip段访问mysql grant all privileges on *.* to 'yang'@'192.168.1.%' identified by '123456'; linux ...

  6. checkbox复选框

    改变checkbox状态 所有的jquery版本都可以这样赋值:// $("#cb1").attr("checked","checked") ...

  7. 日文“表” php 会报错

    php遇到很奇怪的问题,文字“表”会报错,并且是属于编译错误的问题. 单纯的输出: echo " 表 "; 会直接报错. 可是只要在中间加点东西,就可以解决这个问题,就算是空格都可 ...

  8. C#DbHelperMySQL数据库帮助类 (转载)

    主要功能如下数据访问抽象基础类 主要是访问Mysql数据库主要实现如下功能 .得到最大值 .是否存在 .是否存在(基于MySqlParameter) .执行SQL语句,返回影响的记录数 .执行MySq ...

  9. python基础知识八

    当你的程序中出现某些 异常的 状况的时候,异常就发生了.例如,当你想要读某个文件的时候,而那个文件不存在.或者在程序运行的时候,你不小心把它删除了.上述这些情况可以使用异常来处理. 如你的程序中有一些 ...

  10. error: Unable to find vcvarsall.bat while install python library by pip install or python setup.py install.

    Python 2.7 会搜索 Visual Studio 2008. 如果你电脑上没有这个版本的话,比如只有: 1.Visual Studio 2010,在cmd里面执行:SET VS90COMNTO ...