iOS6和iOS7代碼的適配(4)——tableView

來源:互聯網
上載者:User

標籤:style   blog   http   使用   strong   os   

 iOS7上不少控制項的樣子有了變化(畢竟要扁平化嘛),不過感覺變化最大的肯定非tableView莫屬。因為這個控制項的高度可定製性,原先是使用及其廣泛的,這樣的一個改變自然也影響頗大。

      1.accessoryType

      tableViewCell中變化最大的的accessoryType是UITableViewCellAccessoryDetailDisclosureButton了,這個在iOS6的時候是提示使用者還有更多內容,iOS7裡面變成了UITableViewCellAccessoryDetailButton。

      

      2. Plain類型的tableView

      Plain這個類型變化不大,除了從擬物到扁平的一個設計思路,就是一個cell顏色的調整了。

      在iOS6的時候,cell是預設使用透明色的,就是說會顯示tableView的顏色;但iOS7裡面cell預設是白色,會擋住tableView的背景色。

 

      3. Group類型的tableView

      Group這個類型變化較為明顯,主要是對於Header的處理有了變化。

      iOS6的時候,每個Section都是有邊框線的,section的Header大概10個pixel左右,而且第一個section比較貼近上端,沒有明顯的留白;但iOS7裡面section的邊框線取消了,section的Header大概35個pixel,每個section的樣式和Plain比較類似,第一個section和上端有個明顯的留白。

      要修改這個可以使用heightForHeaderInSection:方法來設定Header的高度。

[objc] view plaincopyprint?
  1. - (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section  
  2. {  
  3.     if (section == 0) {  
  4.         return 10.0;  
  5.     } else {  
  6.         return 0;  
  7.     }  
  8. }  
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{    if (section == 0) {        return 10.0;    } else {        return 0;    }}

      效果對比如:

 

      4. 分隔線

      我發現這一點很多地方都沒有提及,可能是大家覺得很自然,沒必要多說。我覺得這個地方差距還是蠻大的,值得說一下。

      iOS6的時候每個cell的分隔線都是從左至右,完整的一條;iOS7的時候就是上下邊框是完整的,中間的較短,如果是文字,短的不多,沒什麼感覺;但如果你在左側放一個UIImage,那麼分隔線是從Image之後開始的,這個就很明顯,尤其是當你Image還不是一樣大小的時候,分隔線的起始點是不同的,這個就會相當相當難看,所以推薦Image大小要一致,至少一個section裡面要一致。

 

      tableView在iOS7上的不同點當然不僅僅這麼幾個啦,我在適配的過程中感覺到這幾個是比較明顯的,所以拿出來曬一下。

http://blog.csdn.net/sakulafly/article/details/18046065

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.