- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customization after application launch. NSObject *object = [[NSObject alloc] init]; NSLog(@Reference Count = %u, [object retainCount]); [object release]; NSLog(@Reference Count = %u, [object retainCount]); return YES; } // 打印結果 // 2015-01-21 10:04:05.799 MRC_Test[2985:607] Reference Count = 1 // 2015-01-21 10:04:05.800 MRC_Test[2985:607] Reference Count = 1
@property (assign, nonatomic) UIBackgroundTaskIdentifier backgroundUpdateTask;
launchOptions { // Override point for customization after application launch. return YES; } - (void)applicationWillResignActive:(UIApplication *)application { // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. } - (void)applicationDidEnterBackground:(UIApplication *)application { [self beginBackgroundUpdateTask]; //在這裡添加需要長久運行的代碼 [self endBackgroundUpdateTask]; } - (void)beginBackgroundUpdateTask { self.backgroundUpdateTask = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{ [self endBackgroundUpdateTask]; }]; } - (void)endBackgroundUpdateTask { [[UIApplication sharedApplication] endBackgroundTask:self.backgroundUpdateTask]; self.backgroundUpdateTask = UIBackgroundTaskInvalid; }
在UIViewController中收起鍵盤, 除了調用相應控件的resignFirstResponder 方法外, 還有另外三種辦法:
1. 重載 UIViewController 中的 touchesBegin方法, 然後在裡面執行 [self.view endEdiiting: YES]; 這樣單擊UIViewController的任意地方, 就可以收起鍵盤。
2. 直接執行[[UIApplication sharedApplication] sendAction:@selector(resignFirstResponder) to: nil from: nil forEvent: nil]; 用於在獲得當前UIViewController比較困難的時候用。
3. 直接執行 [[[UIApplication sharedApplication] keyWindow] endEditing: YES]
在iOS應用中, 有時候會需要調用系統的一些UI控件, 例如:
1. 在UIWebView中長按彈出系統的上下文菜單。
2. 在UIImagePickerController中會使用系統的照相機界面。
3. 在編譯狀態下的UITableViewCell, 處於待刪除狀態時, 會有一個系統的刪除按鈕。
以上這些UI控件, 其顯示的語言並不是和你當前手機的系統語言一致, 而是根據你的應用內部的語言設置來顯示。
在 info.plist文件中, 增加:
CFBundleLocalizations zh_CN
使用-w禁止掉所有的編譯警告, 用-Wno-unused-variable 只禁止未使用變量的編譯警告。
(用法和 -fno-objc-arc 一樣)
... 直接把圖片拖放到模擬器中, 會利用Safari打開, 然後保存即可。