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. C#readonly 关键字与 const 关键字的区别

    1. const 字段只能在该字段的声明中初始化,readonly 字段可以在声明或构造函数中初始化.因此,根据所使用的构造函数,readonly 字段可能具有不同的值. 2. const 字段是编译 ...

  2. [GXOI/GZOI2019]与或和(单调栈)

    想了想决定把这几题也随便水个解题报告... bzoj  luogu 思路: 首先肯定得拆成二进制30位啊 此后每一位的就是个01矩阵 Q1就是全是1的矩阵个数 Q2就是总矩阵个数减去全是0的矩阵个数 ...

  3. 笔试算法题(42):线段树(区间树,Interval Tree)

    议题:线段树(Interval Tree) 分析: 线段树是一种二叉搜索树,将一个大区间划分成单元区间,每个单元区间对应一个叶子节点:内部节点对应部分区间,如对于一个内部节点[a, b]而言,其左子节 ...

  4. Visual Studio 2013/2015/2017快捷键(转载)

    本文为转载文章,原文:[心存善念]  [Fonour] 项目相关的快捷键 Ctrl + Shift + B = 生成项目 Ctrl + Alt + L = 显示 Solution Explorer(解 ...

  5. Java多线程基础(面试向)

    ----?为什么要用到多线程 CPU是以时间片的方式为进程分配CUP处理时间的,如果当一个进程同时要完成几件事的时候,如当从网上下载文件的时候,需要一边下载一边显示进度而且还要一边保存,如果按照单线程 ...

  6. Linux htop工具使用详解【转】

    原文地址: http://www.cnphp6.com/archives/65078 一.Htop的使用简介 大家可能对top监控软件比较熟悉,今天我为大家介绍另外一个监控软件Htop,姑且称之为to ...

  7. c++基础_特殊的数字

    #include <iostream> #include <math.h> using namespace std; int main(){ ;i<;i++){ ; )% ...

  8. poj 1088 滑雪 DP(dfs的记忆化搜索)

    题目地址:http://poj.org/problem?id=1088 题目大意:给你一个m*n的矩阵 如果其中一个点高于另一个点 那么就可以从高点向下滑 直到没有可以下滑的时候 就得到一条下滑路径 ...

  9. Wireshark抓包工具的简单使用2(抓包、查看、过滤)

    在简单了解了Wireshark的界面以及各工具栏的作用后,也要掌握如何进行抓包,查询,过滤等操作 一.抓包 1.打开软件,初始界面 2.点击Caputre-->Interfaces,出现当前所有 ...

  10. STL map的用法介绍!

    map对象的定义 使用前添加map头文件,必须分别指明键和值的类型: map<string,int>word_count; map的构造函数: map<k,v>m;   创建一 ...