首先我們來看一下這張系統(tǒng)設(shè)計(jì)圖。
可以大致看出來涎嚼,每一行都是大致一樣,不一樣的只是圖片的樣式以及圖片旁邊的介紹文字溯捆。
每一行的樣式大致相同配并,只是數(shù)據(jù)不一樣的情況下括荡,豎直方向可以滾動(dòng)的情況下,我們可以使用UITableView來實(shí)現(xiàn)荐绝。
那么我們就來簡單的使用一下UITableView一汽。后面的文章會(huì)完善代碼質(zhì)量。
此文章只講一下簡單的用法低滩。圖片有點(diǎn)小 我就再用文字解說一下:
numberOfSectionsInTableView:(UITableView*)tableView
告訴編譯器 這個(gè)tableView有多少組
tableView:(UITableView*)tableView numberOfRowsInSection:(NSInteger)section
告訴編譯器 這個(gè)tableView在section組 中有多少行
tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath
告訴編譯器 “第indexPath.section組”? “第indexPath.row行”的應(yīng)該顯示什么樣
這樣就可以添加我們想要的數(shù)據(jù)了.
MVC 是一種使用 MVC(Model View Controller 模型-視圖-控制器),可以用簡單的話說就是 視圖,業(yè)務(wù)邏輯岩喷,數(shù)據(jù)是分開的恕沫,單獨(dú)改變哪個(gè),都不影響纱意。
我用的方法就是初步了解的懶加載方法婶溯,就是聲明了一個(gè)NSArray 里面是tableViewData的數(shù)據(jù)集, 把tableView的數(shù)據(jù)代理相應(yīng)的地方換成對(duì)應(yīng)的groupDatas的值偷霉,比如:
這樣的話迄委,我們在改變數(shù)據(jù)的話,不需要改變我們界面的響應(yīng)代碼类少,只需要改變數(shù)據(jù)加載的地方叙身,groupDatas的加載。
以上是 tableView中g(shù)roup的樣式硫狞,但是tableVIew的樣式中還有一種樣式為UITableViewStylePlain信轿,這個(gè)樣式,在有footer 尾部描述的時(shí)候是這個(gè)樣子的:
看左上角會(huì)有重疊残吩,去掉狀態(tài)欄的代碼為:
主要UITableViewStylePlain和UITableViewStyleGrouped的樣式的區(qū)別還有一個(gè)細(xì)節(jié)财忽,細(xì)節(jié)為數(shù)據(jù)多的時(shí)候,UITableViewStylePlain的head不會(huì)跟UITableViewStyleGrouped的head一樣向上滾動(dòng)泣侮,只能是下一個(gè)head換掉這個(gè)head即彪,表現(xiàn)為:
從圖中可以看到,小學(xué)生下面的公主妹已經(jīng)向上滾動(dòng)活尊,而小學(xué)生沒有隶校,依然是在頂部琼蚯,在TableViewStylePlain中的footer也是一樣的,這個(gè)footer的替換也是在下一個(gè)的footer之前會(huì)一直在屏幕中顯示惠况,知道一下個(gè)的footer頂?shù)暨@個(gè)footer遭庶,跟head樣式一樣。
還可以根據(jù):
可以看到稠屠,tableView有兩個(gè)委托方法峦睡,一個(gè)是數(shù)據(jù)源的委托,一個(gè)是tableView的委托权埠,那我們看一下榨了,tableView的委托都有什么東西:其中的一部分,
截的這個(gè)圖攘蔽,名字跟意思都很明了龙屉,分別是改變每行的高度,head以及footer的高度满俗,還有很多方法转捕,我沒有截圖,在后面唆垃,如果接觸到五芝,有感悟,我會(huì)寫上辕万。枢步。
這樣的話,是我對(duì)于MVC思想以及UITableView的基本了解渐尿。以后會(huì)有幾片連續(xù)的文章會(huì)對(duì)TabelView的逐漸進(jìn)行了解醉途。