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. ansible基础配置

    1.基础配置 1.1.环境 主机配置 ansible版本:2.7.4 控制端:centos7.4,IP:192.168.1.213,主机名:operation 被控制端: centos6.5,IP:1 ...

  2. enote笔记法的思考(ver0.2)

    章节:enote笔记法的思考   enote笔记法,它是一种独特的文本标记方式与呈现方式.这一整套系统的记笔记的方法,它能够帮助我们对文本内容(例如,其中的概念.观点.思想等)更加直观和条理地进行理性 ...

  3. bzoj1174 Toponyms

    给你一个字符集合,你从其中找出一些字符串出来. 希望你找出来的这些字符串的最长公共前缀*字符串的总个数最大化. 第一行给出数字N.N在[2,1000000] 下面N行描述这些字符串,长度不超过2000 ...

  4. python 安装模块 更新模块

    #显示模块pip list #显示过期模块pip list --outdated #安装模块pip install xxx #升级模块pip install --upgrade xxx

  5. Django之初

    Django之初 Django的开始: #安装Django: pip3 install django #创建Django项目: django-admin startproject 项目名 #比如: d ...

  6. loaction.reload(false)和location.reload(true) js发起请求

    loaction.reload(false)和location.reload(true)差别: loaction.reload(false) 先判断页面有没修改,有的话就从服务器下载页面,没有就直接从 ...

  7. 杭电1722 Cake (分蛋糕)

    #include<cstdio> int f(int m,int n) { ) return n; else return f(n,m%n); } int main() { int m,n ...

  8. 怎样提高ES集群的稳定性?

    别挂master节点. 稳定性:独立的master节点, 独立的协调节点 > master兼职协调节点 > master兼职数据节点 > master 兼职协调 + 数据节点. cl ...

  9. nativeLibraryDirectories=[/data/app/com.lukouapp-1/lib/arm64, /vendor/lib64, /system/lib64]]] couldn't find "libxxxx.so

    一开始我遇到的问题是,如果手机有SD卡槽,则不管有没有插卡,都会闪退,打日记后发现是找不到so文件.报错日记如下: nativeLibraryDirectories=[/data/app/com.lu ...

  10. HTML基础知识 table中 th,td,tr

    https://www.2cto.com/kf/201711/701872.html table是一个布局神器,之前看过很多代码,都是用table布局的.但是,我在学习的过程中,发现table有很迷的 ...