今天無更新項(xiàng)目Demo,主要在看 《iOS 編程》這本書。
看了大半部分,感覺比起 《Objective-C 基礎(chǔ)教程》更加通俗易懂,推薦一下。
loadview
為了節(jié)省內(nèi)存,每個(gè) viewController 不會(huì)立馬將 view 顯示出來。覆寫 UIViewController 的 loadview 可以手動(dòng)創(chuàng)建視圖層次結(jié)構(gòu)。
除了 loadview 的辦法,還有創(chuàng)建 NIB 文件的方式加入視圖層次結(jié)構(gòu)setRootViewController
調(diào)用這個(gè)方法后,當(dāng)前 view 將會(huì)作為 UIWindow 的子 view,且自動(dòng)調(diào)整其尺寸與窗口的尺寸相同遇到一個(gè)時(shí)區(qū)轉(zhuǎn)化的問題, 記一下
為了獲取到一個(gè)當(dāng)前時(shí)間(包含正確的時(shí)區(qū))
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithName:@"Asia/Shanghai"]];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate *dateAfter6Seconds = [NSDate dateWithTimeIntervalSinceNow:6];
NSString *dateString = [dateFormatter stringFromDate:dateAfter6Seconds]; // 字符串顯示對了
NSDate *date = [dateFormatter dateFromString:dateString]; // 但這里時(shí)區(qū)不對了
需要換一種方式才能得到正確的時(shí)間點(diǎn):
NSDate *date2 = [NSDate date];
NSTimeZone *zone = [NSTimeZone systemTimeZone];
NSInteger interval = [zone secondsFromGMTForDate: date2];
NSDate *localeDate = [date2 dateByAddingTimeInterval: interval + 60]; // 60 秒后