欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

iOS中Cell的Section展開和收起的示例代碼

 更新時間:2017年08月21日 11:05:28   作者:MR小錦  
本篇文章主要介紹了iOS中Cell的Section展開和收起的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

整理文檔,搜刮出一個iOS中Cell的Section展開和收起的示例代碼,稍微整理精簡一下做下分享。

首先,先上圖,讓大家看看效果

 

相信大家對于TableViewd數(shù)據(jù)的設(shè)置都熟悉,這方面就不多說的,重點的還是來看:

1.如何實現(xiàn)cell的Section的展開和收起的效果

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
  [self.tableView deselectRowAtIndexPath:indexPath animated:NO];


  currentRow = indexPath.row;

  NSDictionary *sectionDic = self.dataSource[indexPath.section];
  NSArray *cellArray = sectionDic[@"sub"];

  //cell當(dāng)前的數(shù)據(jù)
  NSDictionary *cellData = cellArray[indexPath.row];

  NSString *key = [NSString stringWithFormat:@"%@", cellData[@"chapterID"]];
  CellModel *chapterModel = [self.cellOpen valueForKey:key];

  chapterModel.isShow = !chapterModel.isShow;

  [self.tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
}

當(dāng)用戶點擊到某一個cell時候,需要判斷cell是否是展開狀態(tài),如果張開或者收起就調(diào)用

復(fù)制代碼 代碼如下:

[self.tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];

讓cell的section能夠重新加載刷新;

2.如何添加cell的Section

2.1設(shè)置section的高度

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
  NSDictionary *sectionDic = self.dataSource[indexPath.section];
  NSArray *cellArray = sectionDic[@"sub"];
  //cell當(dāng)前的數(shù)據(jù)
  NSDictionary *cellData = cellArray[indexPath.row];

  NSString *key = [NSString stringWithFormat:@"%@", cellData[@"chapterID"]];
  CellModel *model = [self.cellOpen valueForKey:key];
  if (model.isShow) {
    return (model.pois.count+1)*60;
  } else {
    return 60;
  }

}

上面的代碼是設(shè)置section的高度,主要是以cell的isshow作為標(biāo)記,讓section的能夠隨數(shù)據(jù)的改變而變動

3.如果要在一個cell上再加一個cell,實現(xiàn)cell內(nèi)嵌cell,需要在哪里加?

答案:當(dāng)然是在cell的HeaderSection或者FooterSection上加上cell,這樣就能實現(xiàn)cell內(nèi)嵌cell。

好了,說了那么多,估計大家還是喜歡看demo,以下是demo的鏈接:https://github.com/xiaojin1123/SectionOpenAndClose.git

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 如何在iOS中高效的加載圖片詳解

    如何在iOS中高效的加載圖片詳解

    這篇文章主要給大家介紹了關(guān)于如何在iOS中高效的加載圖片的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用iOS具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2021-10-10
  • IOS 實現(xiàn)3D 浮動效果動畫

    IOS 實現(xiàn)3D 浮動效果動畫

    這篇文章主要介紹了IOS 實現(xiàn)3D 浮動效果動畫的相關(guān)資料,需要的朋友可以參考下
    2016-09-09
  • IOS開發(fā) 支持https請求以及ssl證書配置詳解

    IOS開發(fā) 支持https請求以及ssl證書配置詳解

    這篇文章主要介紹了IOS開發(fā) 支持https請求以及ssl證書配置詳解的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • Xcode8以及iOS10適配等常見問題匯總(整理篇)

    Xcode8以及iOS10適配等常見問題匯總(整理篇)

    隨著iOS 10的更新以及Xcdoe 8的更新出現(xiàn)了很多問題,今天小編抽時間給大家整理下我遇到的坑特此分享到腳本之家平臺,供大家參考
    2016-09-09
  • iOS archive保存圖片到本地的方法

    iOS archive保存圖片到本地的方法

    這篇文章主要為大家詳細(xì)介紹了iOS archive保存圖片到本地的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • iOS開發(fā)之統(tǒng)計Xcode工程的代碼行數(shù)

    iOS開發(fā)之統(tǒng)計Xcode工程的代碼行數(shù)

    這篇文章主要給大家介紹了在iOS開發(fā)中,如果想要統(tǒng)計Xcode工程的代碼行數(shù)該如何實現(xiàn),文章給出了詳細(xì)的方法和示例代碼,對大家的理解和學(xué)習(xí)很有幫助,本文中還分享了統(tǒng)計java文件和xml文件的代碼,有需要的朋友們下面來一起看看吧。
    2016-10-10
  • IOS獲取各種文件目錄路徑的方法

    IOS獲取各種文件目錄路徑的方法

    ios獲取文件路徑的方法,iphone沙箱模型的四個文件夾,通過documents,tmp,app,Library得到模擬器路徑的簡單方式,下面小編整理相關(guān)資料,把IOS獲取各種文件目錄路徑的方式總結(jié)如下,需要的朋友可以參考下
    2015-08-08
  • IOS MenuViewController實現(xiàn)彈出菜單效果

    IOS MenuViewController實現(xiàn)彈出菜單效果

    這篇文章主要介紹了IOS MenuViewController實現(xiàn)彈出菜單效果,實現(xiàn)一個從下移動上來的彈出菜單,背景逐漸變深,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • Flutter Widgets粘合劑CustomScrollView NestedScrollView滾動控件

    Flutter Widgets粘合劑CustomScrollView NestedScrollVie

    這篇文章主要為大家介紹了Flutter Widgets粘合劑CustomScrollView NestedScrollView滾動控件示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-11-11
  • 解決Flutter出現(xiàn)CocoaPods報錯情況(Mac和IOS)

    解決Flutter出現(xiàn)CocoaPods報錯情況(Mac和IOS)

    這篇文章主要為大家介紹了解決Flutter出現(xiàn)CocoaPods報錯情況(Mac和IOS)的方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08

最新評論