基于ios开发微博客户端
- 格式:pdf
- 大小:18.56 MB
- 文档页数:78
11年1月7日星期五
Calculate Layout
大家好,我是@宝玉 xp,个人网站: http:/ / , 我今天要给大家讲的话 题是:#基于IOS开发 微博客户端#,欢迎大 家参加。 大家好,我是 @宝玉
11年1月7日星期五
Calculate Layout
基于IOS开发微博客户端
@宝玉xp 2011.01
11年1月7日星期五
目录
系统结构 实例分析 1. 如何构成微博客户端界面 2.如何实现微博列表 3.如何显示微博内容 4.如何解析显示微博 5.如何播放表情图片
11年1月7日星期五
目录
数据存储方案 图片的下载和缓存 如何有效利用Crash Log 参考文档 Q&A
11年1月7日星期五
Calculate Layout
大家好,我是@宝玉 xp,个人网站: http:/ / , 我今天要给大家讲的话 题是:#基于IOS开发 微博客户端#,欢迎大 家参加。
11年1月7日星期五
Calculate Layout
大家好,我是@宝玉 xp,个人网站: http:/ / , 我今天要给大家讲的话 题是:#基于IOS开发 微博客户端#,欢迎大 家参加。 大家好,我是
11年1月7日星期五
实例分析
4. 如何解析显示微博
11年1月7日星期五
11年1月7日星期五
Tweet Parser & Draw Emoticons Animation
11年1月7日星期五
Tweet Parse & Draw
大家好,我是@宝玉 xp,个人网站: http:/ / , 我今天要给大家讲的话 题是:#基于IOS开发 微博客户端#,欢迎大 家参加。
大家好,我是@宝玉 xp,个人网站: http:/ / , 我今天要给大家讲的话 题是:#基于IOS开发 微博客户端#,欢迎大 家参加。 大家好,我是 @宝玉 xp
11年1月7日星期五
Calculate Layout
大家好,我是@宝玉 xp,个人网站: http:/ / , 我今天要给大家讲的话 题是:#基于IOS开发 微博客户端#,欢迎大 家参加。 大家好,我是 @宝玉 xp ,个人网站:
11年1月7日星期五
系统结构
11年1月7日星期五
UI API Storeage Weibo Engine Image Server
11年1月7日星期五
实例分析
1. 如何构成微博客户端界面
11年1月7日星期五
UINavigationController
UITableView
UITabBarController
Local Cached
NO Local Cache
11年1月7日星期五
Download Image
11年1月7日星期五
Download Image
Image Server
/thumbnail/62037b5ajw6dd1wtjo8vlj.jpg
11年1月7日星期五
Load Data
API
Local Cache
11年1月7日星期五
JSON Data
11年1月7日星期五
JSON Data
{ "annotations": [], "bmiddle_pic": "/bmiddle/ 62037b5ajw6dd1wtjo8vlj.jpg", "created_at": "Wed Jan 05 21:41:58 +0800 2011", "favorited": true, "geo": null, "id": 4996695469, "in_reply_to_screen_name": "", "in_reply_to_status_id": "", "in_reply_to_user_id": "", "original_pic": "/large/ 62037b5ajw6dd1wtjo8vlj.jpg", "source": "<a href=\"\" rel= \"nofollow\">新浪微博</a>", "text": "某公交车上下班高峰,某老妇与年轻女子争座口角,最后 该女子的总结陈词:“我最讨厌你这种以老卖老的,插队挤上车的时候就演成龙, 上了车后就专演林黛玉!”。", "thumbnail_pic": "/thumbnail/ 62037b5ajw6dd1wtjo8vlj.jpg", "truncated": false, "user": { "id": 1644395354, "location": "广东 广州", "name": "冷笑话精选", "profile_image_url": "/ 1644395354/50/1283204225/1", "province": "44", "screen_name": "冷笑话精选", "statuses_count": 4660, "url": "http://1", "verified": false } }
11年1月7日星期五
Redraw
11年1月7日星期五
Redraw
11年1月7日星期五
实例分析
3. 如何显示微博内容
11年1月7日星期五
UIWebView HTML5 + CSS
11年1月7日星期五
Convert Status To HTML
- (NSString *)parseStatus:(NSString *)string { ! NSMutableString *_html = [NSMutableString string]; ! ! NSInteger stringIndex = 0; ! ! while (stringIndex < string.length) { ! ! NSRange searchRange = NSMakeRange(stringIndex, string.length - stringIndex); ! ! NSRange startRang = [string rangeOfRegex:@"[a-zA-Z0-9%_.+\\-]+@[a-zA-Z0-9.\\-]+?\\.[a-zA-Z]{2,6}|@[azA-Z0-9_\\u4e00-\\u9fa5]+|#[^#]+#|https?://[a-zA-Z0-9\\-.]+(?:(?:/[a-zA-Z0-9\\-._?,'+\\&%$=~*!():@\\\\]*)+)?" ! ! ! ! ! ! ! ! ! ! inRange:searchRange]; ! ! ! ! if (startRang.location != NSNotFound) { ! ! ! NSRange beforeRange = NSMakeRange(searchRange.location, ! ! ! ! ! ! ! ! ! ! ! startRang.location - searchRange.location); ! ! ! if (beforeRange.length) { ! ! ! ! [_html appendString:[string substringWithRange:searchRange]]; ! ! ! } ! ! ! NSString *url = [string substringWithRange:startRang]; ! ! ! NSString *text = [NSString stringWithString:url]; ! ! ! if (![url isMatchedByRegex:@"https?://[a-zA-Z0-9\\-.]+(?:(?:/[a-zA-Z0-9\\-._?,'+\\&%$=~*!():@\\\ \]*)+)?"]) { ! ! ! ! url = [NSString stringWithFormat:@"zhiweibo://%@", [self encodeString:text]]; ! ! ! }! ! ! ! ! ! [_html appendFormat:@"<a href=\"%@\">%@</a>", url, text];! ! ! ! ! ! stringIndex = startRang.location + startRang.length; ! ! } ! ! else { ! ! ! [_html appendString:[string substringWithRange:searchRange]]; ! ! ! break; ! ! } ! } ! ! return _html; }
11年1月7日星期五
实例分析
2. 如何实现微博列表
11年1月7日星期五
11年1月7日星期五
Step1: Load Data Step2: Calculate Layout Step3: Draw Rect Step4: Download Image Step5: ReDraw