IOS開發筆記:IOS的零零散散記錄

IOS armv

Armv6:iPhone 2G/3G、ipod1G/2G

Armv7:iPhone3GS/4/4s、ipod3G/4G、ipad1G/2G/3G

Armv7s:iPhone5


URL中含有%

當你的接口中含有%22時你要將其替換爲\",否則客戶端是無妨訪問。你將含有%22的接口複製到瀏覽器中進行打開,觀察URL的變化,你會發現,原來有%22的地方都被編碼成\",當你再次從瀏覽器複製出來時,URL有還原成原來含有%22的URL,所以客戶端在使用時要將其手動替換。


NSUserDefault存儲NSMutableDictionary

在用NSUserDefaulsts存儲值的時候,如果有很多值並且有一定相關性,則可以用 NSDictionary存儲,如:

NSDictionary*authData = [NSDictionarydictionaryWithObjectsAndKeys:

                             sinaweibo.accessToken, @"AccessTokenKey",

sinaweibo.expirationDate, @"ExpirationDateKey",

                             sinaweibo.userID, @"UserIDKey",

                             sinaweibo.refreshToken, @"refresh_token", nil];

但有一點需要注意!NSUserDefaults不管你存進去的是可變字典還是不可變字典,它一律給你當成不可變字典,所以如果要取出來當可變字典用,可以如下:

NSMutableDictionary *shareTime = [[defaultsobjectForKey:@"shareTime"] mutableCopy];


KVO實現時要注意的

在實現KVO時,如果幾個controller中展示的是一樣的數據,變化是一起的,要將此數據封裝成一個類,並使用單例,然後多個controller對它進行觀察。


IOS 圖像

1、CGImageRef pickImage =(CGImageCreateWithImageInRect([image CGImage], rect));

使用這個則必須調用相應的釋放方法,即使已經使用了arc

CGImageRelease(pickImage);      

2、uiedgeinsetsmake(image.size.heigh/2,image.size.width/2,image.size.hegit/2,image.size.width/2)

讓Image當背景,會被拉伸。爲什麼這樣呢?

正常拉伸圖片只允許在top—bottom之間留1px被拉伸,即first and third參數,left—right之間留1px被拉伸,即second and fourth 參數。


界面消失與出現 delegate

[self dismissViewControllerAnimated:YEScompletion:^{

               [self.delegate numberOfRowsSelected:[objects count] withData:objects];   }];

如果放出去讓delegate執行的方法,要這樣,以保證delegate裏有pressentViewController時,當前界面正常消失,後面的界面正常出現


可以通用的類的設計技巧

如果一個界面可以用來共用,比如table用來選擇,則可以在點擊確定按鈕的執行方法中或點擊每一個行時,用代理方法,將由此類獲得的數據傳遞出去,具體要怎麼處理則由實現這個代理的類去做。


關於JSON

1、Json格式如果數據是很長的文字,那麼文字中不能有空白、換行等,否則getJson和ajax都不會執行。

2、以後用CJSONDeserializer.hCJSONDeserializer.h解析Json數據時,如果出現Failed to scan a value,一定是json字符串的格式有問題,一定仔細檢查。


時間戳

時間戳,即距離1970年1月1日的秒數,到目前爲止是一個10位的整數,用NSUInteger轉換就行了。


UIWebView與JS交互

1、如果想要在html已加載的時候就給某個變量賦值,可以在(void)webViewDidFinishLoad:(UIWebView*)webView1//加載完成 中進行處理。

2、如果加載本地的html,裏面的js突然不執行了,很大可能就是js代碼由於之前的改動,出現了錯誤。


IOS 數組

1、如果輸出結果爲這樣的(

   imglist

)說明這個一個二維數組。


關於Itunes Connect上傳

1、itunes connect不能輕易刪除已經創建的APP,否則這個APP的已填信息都不能在使用了,以後要記住在刪除東西之前要確保沒有問題,不能輕易執行刪除操作!!!!


HTTP請求

1、Content-type

Content-Type指定要求的那個文件的類型是什麼,對於正常的HTTP Post請求,需指定[request setValue:@"application/x-www-form-urlencoded"forHTTPHeaderField:@"Content-Type"];

3、在HTTP POST中傳遞參數時,如果是中文要轉成unicode。

4、ASIHTTPRequest中,[request setResponseEncoding:NSUTF8StringEncoding];如果接收到的是亂碼則這樣設置不管用,直接改它裏面的返回數據的編碼。


IOS 字符串

1、NSString的stringByAppendingString方法是將拼接後的字符串返回,所以一定要讓原來的等於才行,如 NSString *str = @””;

str =[str stringByAppendingString];


關於XCode設置

1、開啓調試exc_bad_access

在xcode中設置的步驟:

product->Scheme->Editor Scheme。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章