iPhone應用開發執行個體介紹

來源:互聯網
上載者:User

iPhone應用開發執行個體介紹是本文要介紹內容,主要講解了字元處理、NavigationItem添加視圖圖片等內容。不多說,先來看詳細內容。

用NSURLConnection Post上傳資料的特殊字元處理

用NSURLConnection Post上傳的時候發現一個特奇怪的問題,只要是+號都會替換成空格。例如"google+"就會變成"google ",代碼如下:

 
  1. NSString*bodyStr =@"google+";  
  2. [urlRequestsetHTTPBody:[bodyStr dataUsingEncoding:NSUTF8StringEncoding]];  
  3. //NSUTF8StringEncoding編碼是為了防止中文上傳的時候出錯。 

查些資料發現只要這些特殊符號在轉之前做一次UTF8編碼就可以解決這個問題了,代碼如下:

 
  1. NSString*bodyStr =@"google+";  
  2. NSString*bStr =CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,   
  3.                                                        (CFStringRef)bodyStr,   
  4.                                                        NULL,   
  5.                                                CFSTR(":/?#[]@!$&’()*+,;="),   
  6.                                                kCFStringEncodingUTF8);  
  7. [urlRequest setHTTPBody:[bStr dataUsingEncoding:NSUTF8StringEncoding]];  
  8. [bStr release]; 

NavigationItem 添加標題視圖的方法
 
在 iOS 應用開發中經常會用到導航器,在導航器中添加標題很簡單,文法如下:

 
  1. self.title=@"Elimination phase Day 1"; 

但是如果題目太長,後半部分就變成省略符號了,那要實現自訂字型,代碼和效果如下:

 
  1. UILabel *titleText = [[UILabel alloc] initWithFrame: CGRectMake(0, 0, 200, 20)];   
  2.     titleText.backgroundColor = [UIColor clearColor];   
  3.     [titleText setFont:[UIFont systemFontOfSize:15.0]];   
  4.     [titleText setText:@"Elimination phase Day 1"];   
  5.     self.navigationItem.titleView=titleText;   
  6.     [titleText release]; 

還原iPhone應用中png圖片的方法

Apple 對 iPhone 應用程式中的 png 圖片進行了特殊的處理,在 png 檔案頭之後加了一個非標準的 CgBI 資料區段,IDAT 段映像資料也沒有傳統的壓縮資料頭和尾,並且紅色和藍色是反的,這樣就無法在 Mac 或 Windows 下不能正常使用了。

國外開發人員已經搞定了這一問題,先下載這個程式:http://acquisition.dreamhosters.com/iPhonePNG.zip,解壓後將 iPhonePNG 這個二進位檔案複製到 /Applications 目錄。假設你的圖片在./img目錄下,想轉換到 ./decode 目錄,在終端執行:

 
  1. $ find ./img -name "*.png" -exec /Applications/iPhonePNG {} \; 

預設將轉換後的圖片添加尾碼後放在原圖片相同目錄,把他批量移動出來:

 
  1. $ find ./img -name "*Decoded.png" -exec mv {} ./decode \; 

小結:iPhone應用開發執行個體介紹的內容介紹完了,希望通過本文的學習能對你有所協助!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.