WWDC笔记:2013 Session 201 Building User Interfaces for iOS 7
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的更多相关文章
- WWDC笔记:2013 Session 203 What’s New in Cocoa Touch(未完)
Multitasking Background fetching New background mode fetch - (void)application:(UIApplication *)appl ...
- WWDC笔记:2011 Session 125 UITableView Changes, Tips and Tricks
What’s New Automatic Dimensions - (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSect ...
- [ios-必看] WWDC 2013 Session笔记 - iOS7中的多任务【转】
感谢:http://onevcat.com/2013/08/ios7-background-multitask/ http://www.objc.io/issue-5/multitasking.htm ...
- webpy使用笔记(二) session/sessionid的使用
webpy使用笔记(二) session的使用 webpy使用系列之session的使用,虽然工作中使用的是django,但是自己并不喜欢那种大而全的东西~什么都给你准备好了,自己好像一个机器人一样赶 ...
- MZY项目笔记:session歧路
from my typora MZY项目笔记:session歧路 文章目录 MZY项目笔记:session歧路 那该怎么办? 1. 手动加上cookie的header. 2.自己模拟一个Session ...
- WWDC 2013 Session笔记 - iOS7中的多任务
这是我的WWDC2013系列笔记中的一篇,完整的笔记列表请参看这篇总览.本文仅作为个人记录使用,也欢迎在许可协议范围内转载或使用,但是还烦请保留原文链接,谢谢您的理解合作.如果您觉得本站对您能有帮助, ...
- WWDC 2013 Session笔记 - UIKit Dynamics入门
本文涉及到的WWDC2013 Session有 1.Session 206 Getting Started with UIKit Dynamics 2.Session 221 Advanced Tec ...
- Laravel学习笔记之Session源码解析(上)
说明:本文主要通过学习Laravel的session源码学习Laravel是如何设计session的,将自己的学习心得分享出来,希望对别人有所帮助.Laravel在web middleware中定义了 ...
- 读书笔记2013第10本:《学得少却考得好Learn More Study Less》
<学得少却考得好Learn More Study Less>这本书最早是从褪墨网站上看到的,crowncheng翻译了全文.这本书介绍了不少学习方法,非常适合在校的学生,原文的作者Scot ...
随机推荐
- ansible基础配置
1.基础配置 1.1.环境 主机配置 ansible版本:2.7.4 控制端:centos7.4,IP:192.168.1.213,主机名:operation 被控制端: centos6.5,IP:1 ...
- enote笔记法的思考(ver0.2)
章节:enote笔记法的思考 enote笔记法,它是一种独特的文本标记方式与呈现方式.这一整套系统的记笔记的方法,它能够帮助我们对文本内容(例如,其中的概念.观点.思想等)更加直观和条理地进行理性 ...
- bzoj1174 Toponyms
给你一个字符集合,你从其中找出一些字符串出来. 希望你找出来的这些字符串的最长公共前缀*字符串的总个数最大化. 第一行给出数字N.N在[2,1000000] 下面N行描述这些字符串,长度不超过2000 ...
- python 安装模块 更新模块
#显示模块pip list #显示过期模块pip list --outdated #安装模块pip install xxx #升级模块pip install --upgrade xxx
- Django之初
Django之初 Django的开始: #安装Django: pip3 install django #创建Django项目: django-admin startproject 项目名 #比如: d ...
- loaction.reload(false)和location.reload(true) js发起请求
loaction.reload(false)和location.reload(true)差别: loaction.reload(false) 先判断页面有没修改,有的话就从服务器下载页面,没有就直接从 ...
- 杭电1722 Cake (分蛋糕)
#include<cstdio> int f(int m,int n) { ) return n; else return f(n,m%n); } int main() { int m,n ...
- 怎样提高ES集群的稳定性?
别挂master节点. 稳定性:独立的master节点, 独立的协调节点 > master兼职协调节点 > master兼职数据节点 > master 兼职协调 + 数据节点. cl ...
- nativeLibraryDirectories=[/data/app/com.lukouapp-1/lib/arm64, /vendor/lib64, /system/lib64]]] couldn't find "libxxxx.so
一开始我遇到的问题是,如果手机有SD卡槽,则不管有没有插卡,都会闪退,打日记后发现是找不到so文件.报错日记如下: nativeLibraryDirectories=[/data/app/com.lu ...
- HTML基础知识 table中 th,td,tr
https://www.2cto.com/kf/201711/701872.html table是一个布局神器,之前看过很多代码,都是用table布局的.但是,我在学习的过程中,发现table有很迷的 ...