Text

Dynamic Type

  • Specifies fonts semantically
  • Supports user text sizing
  • Optimized for legibility
  • Supports accessibility sizes and enhancements

Text Styles

Headline 1 UIFontTextStyleHeadline1
Headline 2 UIFontTextStyleHeadline2
Subheadline 1 UIFontTextStyleSubheadline1
Subheadline 2 UIFontTextStyleSubheadline2
Body UIFontTextStyleBody
Footnote UIFontTextStyleFootnote
Caption 1 UIFontTextStyleCaption1
Caption 2 UIFontTextStyleCaption2
 
+[UIFont preferredFontForTextStyle:]

Letterpress

NSAttributedString *letterpressString = [[NSAttributedString alloc]
initWithString: @"Letterpress"
attributes: @{NSTextEffectsAttributeName : NSTextEffectsLetterpressStyle}];

Text Kit

Relate Session

  • Introducing Text Kit
  • Advanced Text Layouts and Effects with Text Kit
  • Using Fonts with Text Kit

Full Screen Content

-[UIViewController extendedEdgesForLayout]
-[UIViewController topLayoutGuide]
-[UIViewController bottomLayoutGuide]

Status Bar Style

  • Default
  • LightContent
@interface UIViewController
- (UIStatusBarStyle)preferredStatusBarStyle;
- (BOOL)prefersStatusBarHidden;
@end

Enabled via Info.plist key:

// UIViewControllerBasedStatusBarAppearance
- [UINavigationController interactivePopGestureRecognizer]
- [UICollectionViewController useLayoutToLayoutNavigationTransitions]

Relate Session

  • Custom Transitions Using View Controllers

Table View

-[UITableViewCell separatorInset]

UIAlertView

contentView

UIButton

  • UIButtonTypeSystem
  • UIBarButtonItemStylePlain

UIButtonTypeRoundRect,UIBarButtonItemStyleBordered

@interface UISegmentedControl
@property UISegmentedControlStyle segmentedControlStyle
@end

Picker views

  • Avoid using as a UIInputView
  • Present inline instead

Search fields

@interface UISearchDisplayController
@property BOOL displaysSearchBarInNavigationBar;
@property UINavigationItem *navigationItem;
@end

Multitasking

Relate Session

  • What’s New with Multitasking
  • UIKit Dynamic
  • Relate Session
  • Getting Started with UIKit Dynamics
  • Advanced Techniques with UIKit Dynamics
  • Exploring Scroll Views on iOS 7

Motion Effect

Relate Session

  • Implementing Engaging UI on iOS

    -[UIView drawHierarchyInRect:]

Relate Session

  • Implementing Engaging UI on iOS

Adapting Your App for iOS 7

At a high level

  • Focus on core functionality
  • Exalt it
  • Breathe new life
  • Consider Retina’s possibilities

On an API level

  • Adopt new text APIs
  • Ensure view controllers are full screen
  • Incorporate adaptive multitasking
  • Create fluid view controller and collection view transitions • Consider dynamics and motion effects

Supporting both iOS 6 and iOS 7

  • Use the iOS 7 UI Transition Guide
  • Autolayout will help
  • Consider backporting a new design

Related Sessions

  • What’s New in Cocoa Touch
  • What’s New with Multitasking
  • Introducing Text Kit
  • Customizing Your App’s Appearance for iOS 7
  • Custom Transitions Using View Controllers
  • Getting Started with UIKit Dynamics

Related Labs

  • Cocoa Touch Lab
  • Adapting Your Apps for iOS 7 Lab
  • UIKit Dynamic Lab
  • Text Kit and Core Text Lab
  • Appearance Customization for iOS Lab
  • Cocoa Touch Animation Lab

WWDC笔记:2013 Session 201 Building User Interfaces for iOS 7的更多相关文章

  1. WWDC笔记:2013 Session 203 What’s New in Cocoa Touch(未完)

    Multitasking Background fetching New background mode fetch - (void)application:(UIApplication *)appl ...

  2. WWDC笔记:2011 Session 125 UITableView Changes, Tips and Tricks

    What’s New Automatic Dimensions - (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSect ...

  3. [ios-必看] WWDC 2013 Session笔记 - iOS7中的多任务【转】

    感谢:http://onevcat.com/2013/08/ios7-background-multitask/ http://www.objc.io/issue-5/multitasking.htm ...

  4. webpy使用笔记(二) session/sessionid的使用

    webpy使用笔记(二) session的使用 webpy使用系列之session的使用,虽然工作中使用的是django,但是自己并不喜欢那种大而全的东西~什么都给你准备好了,自己好像一个机器人一样赶 ...

  5. MZY项目笔记:session歧路

    from my typora MZY项目笔记:session歧路 文章目录 MZY项目笔记:session歧路 那该怎么办? 1. 手动加上cookie的header. 2.自己模拟一个Session ...

  6. WWDC 2013 Session笔记 - iOS7中的多任务

    这是我的WWDC2013系列笔记中的一篇,完整的笔记列表请参看这篇总览.本文仅作为个人记录使用,也欢迎在许可协议范围内转载或使用,但是还烦请保留原文链接,谢谢您的理解合作.如果您觉得本站对您能有帮助, ...

  7. WWDC 2013 Session笔记 - UIKit Dynamics入门

    本文涉及到的WWDC2013 Session有 1.Session 206 Getting Started with UIKit Dynamics 2.Session 221 Advanced Tec ...

  8. Laravel学习笔记之Session源码解析(上)

    说明:本文主要通过学习Laravel的session源码学习Laravel是如何设计session的,将自己的学习心得分享出来,希望对别人有所帮助.Laravel在web middleware中定义了 ...

  9. 读书笔记2013第10本:《学得少却考得好Learn More Study Less》

    <学得少却考得好Learn More Study Less>这本书最早是从褪墨网站上看到的,crowncheng翻译了全文.这本书介绍了不少学习方法,非常适合在校的学生,原文的作者Scot ...

随机推荐

  1. 07JavaScript数组与字符串对象

    JavaScript数组与字符串对象 5.1.1数组(Array)对象 <script> //声明一个数组并赋值; var arr = new Array("aa",& ...

  2. js模拟输入支付密码

    html <div class="content"> <!--<div class="title">支付宝支付密码:</di ...

  3. 第2节 hive基本操作:11、hive当中的分桶表以及修改表删除表数据加载数据导出等

    分桶表 将数据按照指定的字段进行分成多个桶中去,说白了就是将数据按照字段进行划分,可以将数据按照字段划分到多个文件当中去 开启hive的桶表功能 set hive.enforce.bucketing= ...

  4. 排序算法小结:C++实现

    #include<vector> #include<iostream> //排序算法的稳定性:对于相同的关键字,排序之前的位置和排序之后的位置相同,则称为稳定排序,否则不稳定排 ...

  5. 用SQLyog或Navicat远程连接数据库

    以SQLyog为例(Navicat同理): 登录远程数据库服务器查看当前存在用户:即点击用户管理器(人像图标),查看用户. 1)如果某一用户 主机一栏中是"%",则表示本用户是开放 ...

  6. 【design pattern】工厂方法模式和抽象工厂模式

    前言 设计模式分为三大类: 创建型模式:工厂方法模式.抽象工厂模式.单例模式.建造者模式.原型模式: 结构型模式:适配器模式.装饰器模式.代理模式.外观模式.桥接模式.组合模式.享元模式: 行为型模式 ...

  7. 配置Mysql审计

    mysql-audit.json:Mysql审计日志 插件下载地址: https://bintray.com/mcafee/mysql-audit-plugin/release/1.1.4-725#f ...

  8. 第十六节:Scrapy爬虫框架之项目创建spider文件数据爬取

    Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架. 其可以应用在数据挖掘,信息处理或存储历史数据等一系列的程序中.其最初是为了页面抓取所设计的, 也可以应用在获取API所返回的数据或 ...

  9. jquery 修改input输入框的 readOnly属性 && input输入框隐藏

    html的代码 <div class="control-group"> <label class="control-label required&quo ...

  10. SpringMVC Controller的返回类型

    Controller的三种返回类型中 ModelAndView类型 带数据带跳转页面 String 跳转页面不带数据 void 通常是ajax格式请求时使用 1返回ModelAndView contr ...