IOS第七天(2:UiTableView 加上數據分離)

****加上數據分離

#import "HMViewController.h"
#import "HMStudent.h"@interface HMViewController () <UITableViewDataSource>
@property (weak, nonatomic) IBOutlet UITableView *tableView;/** 數據列表 */
@property (nonatomic, strong) NSArray *dataList;
@end@implementation HMViewController- (NSArray *)dataList
{if (_dataList == nil) {HMStudent *stu1 = [[HMStudent alloc] init];stu1.title = @"黑馬1期";stu1.desc = @"牛叉";// 生成編號數組NSMutableArray *arrayM1 = [NSMutableArray array];for (int i = 0; i < 10; i++) {[arrayM1 addObject:[NSString stringWithFormat:@"%@ - %04d", stu1.title, i]];}stu1.students = arrayM1;HMStudent *stu2 = [[HMStudent alloc] init];stu2.title = @"黑馬2期";stu2.desc = @"也牛叉";// 生成編號數組NSMutableArray *arrayM2 = [NSMutableArray array];for (int i = 0; i < 20; i++) {[arrayM2 addObject:[NSString stringWithFormat:@"%@ - %04d", stu2.title, i]];}stu2.students = arrayM2;_dataList = @[stu2, stu1];}return _dataList;
}#pragma mark - 數據源方法
// 如果沒有實現,默認是1
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{return self.dataList.count;
}// 每個分組中的數據總數
// sction:分組的編號
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{// students數組中的元素數量// 取出數組中對應的學員信息
//    HMStudent *stu = self.dataList[section];
//    return stu.students.count;// 計算數量的代碼,由于層次比較深,建議使用上面的代碼return [[self.dataList[section] students] count];
}// 告訴表格控件,每一行cell單元格的細節
// indexPath
//  @property(nonatomic,readonly) NSInteger section;    分組
//  @property(nonatomic,readonly) NSInteger row;        行
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{// 實例化TableViewCell時,使用initWithStyle方法來進行實例化UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:nil];// 取出indexPath對應的數據HMStudent *stu = self.dataList[indexPath.section];cell.textLabel.text = stu.students[indexPath.row];return cell;
}// 返回分組的標題文字
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
{
//    HMStudent *stu = self.dataList[section];
//    return stu.title;return [self.dataList[section] title];
}- (NSString *)tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section
{
//    HMStudent *stu = self.dataList[section];
//    return stu.desc;// 直接從數組中取出的對象是id類型,因為沒有明確的類型,因此不能使用.語法,只能使用getter方法return [self.dataList[section] desc];
}@end

?

轉載于:https://www.cnblogs.com/ios-g/p/4701490.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/258532.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/258532.shtml
英文地址,請注明出處:http://en.pswp.cn/news/258532.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

觀點:Linux 上的殺毒軟件

剛剛進入二月&#xff0c;在360安全衛士 for Linux瞬間更名為360安全衛士國產系統專版。緊接著不久&#xff0c;Dr.Web 宣布發現一款可能源自 ChinaZ 的 Linux 系統的后門程序。加之又被朝內媒體炒作起來的 OpenSSL 基金會事宜&#xff0c;不由得思緒飄溢&#xff0c;再看看 Li…

使用opencv的LBF算法進行人臉關鍵點檢測

首先下載最新的opencv 和opencv_contrib, 然后按照在Windows下編譯擴展OpenCV 3.1.0 opencv_contrib的方法進行編譯&#xff0c;其中核心一點就是先編譯opencv&#xff0c;再在OPENCV_EXTRA_MODULES_PATH中加入opencv_contrib的modules的路徑。 編譯好了后就可以進行人臉關鍵…

scala case class 繼承_數字硬件系統設計之一:Scala快速入門(2)

原想簡單籠統介紹一下scala&#xff0c;后感覺這么做意思不大&#xff0c;網友看了和沒看一樣&#xff0c;還是應該稍微詳細具體一點&#xff0c;故而把系列編號由(上)(中)(下)&#xff0c;改為(上)(2)(3)(4)(5)....,(上)就是(1)吧&#xff0c;以下內容部分節選于我們即將出版的…

Ubuntu下安裝FTP服務及使用(VSFTPD詳細設置)(二)

vsftpd 作為一個主打安全的FTP服務器&#xff0c;有很多的選項設置。下面介紹了vsftpd的配置文件列表&#xff0c;而所有的配置都是基于vsftpd.conf這個配置文件 的。本文將提供完整的vsftpd.conf的中文說明。學習本文的內容將有助于你初步了解vsftpd的配置文件&#xff0c;但針…

crontab命令

前一天學習了 at 命令是針對僅運行一次的任務&#xff0c;循環運行的例行性計劃任務&#xff0c;linux系統則是由 cron (crond) 這個系統服務來控制的。Linux 系統上面原本就有非常多的計劃性工作&#xff0c;因此這個系統服務是默認啟動的。另外, 由于使用者自己也可以設置計劃…

調查顯示企業對 Linux 開發人才需求日漸增長

根據2014年Linux就業報告調查顯示&#xff0c;隨著Linux平臺增長&#xff0c;Linux平臺開發者就業需求較去年提升了7%&#xff0c;技術公司招聘Linux開發經歷的人才需求達到 77%&#xff0c;這是來自Dice和Linux基金會共同對就業市場對Linux人才的全景式調查&#xff0c;調查訪…

求圓和橢圓上任意角度的點的坐標

圓上任意角度的點的坐標 如上圖&#xff0c;給定圓心&#xff08;Cx,Cy&#xff09;,半徑為R&#xff0c; 求θ\thetaθ對應的點的坐標&#xff1f; 此處θ\thetaθ是相對于水平軸的角度。 顯然我們可以使用極坐標轉換來求&#xff1a; {pxCxRcos(θ)pyCyRsin(θ)\left\{\begi…

BZOJ ac100題存檔

不知不覺AC100題了&#xff0c;放眼望去好像都是水題。在這里就做一個存檔吧&#xff08;特別感謝各位大神尤其是云神http://hi.baidu.com/greencloud和麗潔姐http://wjmzbmr.com/的blog提供的題解&#xff09; 代碼什么的有時間在放。 1000: AB Problem 好吧&#xff0c;這也算…

Android Build.VERSION.SDK_INT兼容介紹

盡管Android向下兼容不好&#xff0c;但是一個程序還是可以在多個平臺上跑的。向下兼容不好&#xff0c;接口改變&#xff0c;新的平臺上不能用舊的API&#xff0c;舊的平臺更不可能用新的API&#xff0c;不等于一個平臺需要一個APK。可以在高SDK上開發&#xff0c;并在程序中作…

smtp中mailfrom是必須的嗎_你是住在高層建筑中嗎?這是你必須了解的

01PARTONE消防電梯和普通客梯的作用及特點1.消防電梯是在建筑物發生火災時供消防人員進行滅火與救援使用且具有一定功能的電梯。因此&#xff0c;消防電梯具有較高的防火要求&#xff0c;其防火設計十分重要。2.普通電梯均不具備消防功能&#xff0c;發生火災時禁止人們搭乘電梯…

c++ 函數的值傳遞,引用傳遞 和 引用返回的探索

2019獨角獸企業重金招聘Python工程師標準>>> 前言 C的函數參數和返回分為按值傳遞和按引用傳遞,應用到類上面,會涉及到類的 賦值操作 復制函數 構造函數 析構函數 雖然java開發了兩年,但對我而言c我還只是一個初學者.c還有很多陌生的特性需要自己親自探索.這里用實際…

GCD的部分總結

GCD是基于C語言的底層API,用Block定義任務用起來非常靈活便捷. GCD的基本思想是就將操作放在隊列中去執行 (1)操作使用Blocks定義(2)隊列負責調度任務執行所在的線程以及具體的執行時間(3)隊列的特點是先進先出(FIFO)的&#xff0c;新添加至對列的操作都會排在隊尾關于多線程的…

將bgr彩色矩陣歸一化到0-255之間 【RGB image normalization】

參考下面文章&#xff0c;可以使用normalize 函數。 https://blog.csdn.net/kuweicai/article/details/78988886 對于彩色rgb圖像&#xff0c;也可以直接使用以上函數, 參考 https://devtalk.nvidia.com/default/topic/1042100/rgb-image-normalization/?offset8 image cv2…

多線程編程2-NSOperation

本文目錄 前言一、NSInvocationOperation二、NSBlockOperation三、NSOperation的其他用法四、自定義NSOperation回到頂部前言 1.上一講簡單介紹了NSThread的使用&#xff0c;雖然也可以實現多線程編程&#xff0c;但是需要我們去管理線程的生命周期&#xff0c;還要考慮線程同步…

python圖片顯示英文字符_python如何解析字符串中出現的英文人名?

這里有四個例子&#xff0c;結果來自google scholarstr1 "Jakes, William C., and Donald C. Cox. Microwave mobile communications. Wiley-IEEE Press, 1994."str2 "Schlegel, David J., Douglas P. Finkbeiner, and Marc Davis. \"Maps of dust infra…

閃回表操作語法+使用閃回刪除

閃回表操作語法 flashback table 【 schema.】 table_name to {【before drop 【rename to new_table_name】 】|【scn | timestamp 】】 expr 【enable | disable 】 triggers}: 參數說明&#xff1a; schema&#xff1a;用戶模式 before drop&#xff1a;表示恢復到刪除…

在現有的python環境下創建另一個python版本【親測有效】

比如&#xff0c;你現在的python環境是3.6&#xff0c;想要使用一個3.5&#xff0c;可以在anaconda環境下使用conda虛擬環境。 第一步&#xff1a; conda create -n py35 【創建Py35虛擬環境】 第二步&#xff1a; 進入環境 activate py35 第三步&#xff1a; 升級或者降…

時間戳

我發現&#xff0c;我在本站公布的文章&#xff0c;url 最后一段都是 134 開頭的一串數字。一開始并沒在意&#xff0c;僅僅想當然以為是程序隨機生成的。 昨天跟程序作者交談的過程中無意問起&#xff0c;他說這是代表時間的。剛才訪問 GoAgent 項目時發現&#xff0c;其作者 …

歐拉函數 - HDU1286

歐拉函數的作用&#xff1a; 有[1,2.....n]這樣一個集合&#xff0c;f(n)這個集合中與n互質的元素的個數。歐拉函數描述了一些列與這個f(n)有關的一些性質&#xff0c;如下&#xff1a; 1、令p為一個素數&#xff0c;n p ^ k&#xff0c;則 f(n) p ^ k - p ^ (k-1) 2、令m&…

其中一個頁簽慢_渭南提升一個大專學歷的有效方法

渭南提升一個大專學歷的有效方法&#xff0c;宏德教育&#xff0c;目前已形成以高等學歷教育為特色王牌&#xff0c;職稱考評、企業內訓為輔助的強力優勢品牌。渭南提升一個大專學歷的有效方法&#xff0c; 獲得發明專利或實用新型專利&#xff0c;且已實施取得效益。出版本專業…