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

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

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

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

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

 

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

1.如何實(shí)現(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)用戶點(diǎn)擊到某一個(gè)cell時(shí)候,需要判斷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ù)的改變而變動(dòng)

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

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

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

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

相關(guān)文章

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

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

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

    IOS 實(shí)現(xiàn)3D 浮動(dòng)效果動(dòng)畫

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

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

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

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

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

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

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

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

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

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

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

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

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

    Flutter Widgets粘合劑CustomScrollView NestedScrollVie

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

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

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

最新評(píng)論