iOS開發UI篇—UITableview控件簡單介紹

一、基本介紹

在眾多移動應?用中,能看到各式各樣的表格數據 。

在iOS中,要實現表格數據展示,最常用的做法就是使用UITableView,UITableView繼承自UIScrollView,因此支持垂直滾動,?且性能極佳 。

UITableview有分組和不分組兩種樣式,可以在storyboard或者是用代碼設置。

二、數據展示

UITableView需要?一個數據源(dataSource)來顯示數據 UITableView會向數據源查詢一共有多少行數據以及每?行顯示什么數據等

沒有設置數據源的UITableView只是個空殼

凡是遵守UITableViewDataSource協議的OC對象,都可以是UITableView的數據源?

?

展示數據的過程:

(1)調用數據源的下面?法得知?一共有多少組數據 - (NSInteger)numberOfSectionsInTableView:(UITableView?*)tableView;

(2)調用數據源的下面?法得知每一組有多少行數據 - (NSInteger)tableView:(UITableView *)tableView?numberOfRowsInSection:(NSInteger)section;

(3)調?數據源的下??法得知每??顯示什么內容

- (UITableViewCell *)tableView:(UITableView *)tableView?cellForRowAtIndexPath:(NSIndexPath *)indexPath;

三、代碼示例

更多相關APP開發資訊關注:appyykf

?

(1)能基本展示的“垃圾”代碼

復制代碼
  1 #import "NJViewController.h"
 2  3 @interface NJViewController ()<UITableViewDataSource>  4 @property (weak, nonatomic) IBOutlet UITableView *tableView;  5  6 @end  7  8 @implementation NJViewController  9  10 - (void)viewDidLoad  11 {  12  [super viewDidLoad];  13 // 設置tableView的數據源  14 self.tableView.dataSource = self;  15  16 }  17  18 #pragma mark - UITableViewDataSource  19 /**  20  * 1.告訴tableview一共有多少組  21 */  22 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView  23 {  24 NSLog(@"numberOfSectionsInTableView");  25 return 2;  26 }  27 /**  28  * 2.第section組有多少行  29 */  30 - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section  31 {  32 NSLog(@"numberOfRowsInSection %d", section);  33 if (0 == section) {  34 // 第0組有多少行  35 return 2;  36 }else  37  {  38 // 第1組有多少行  39 return 3;  40  }  41 }  42 /**  43  * 3.告知系統每一行顯示什么內容  44 */  45 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath  46 {  47 NSLog(@"cellForRowAtIndexPath %d %d", indexPath.section, indexPath.row);  48 // indexPath.section; // 第幾組  49 // indexPath.row; // 第幾行  50 // 1.創建cell  51 UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:nil];  52  53 // 2.設置數據  54 // cell.textLabel.text = @"汽車";  55 // 判斷是第幾組的第幾行  56 if (0 == indexPath.section) { // 第0組  57 if (0 == indexPath.row) // 第0組第0行  58  {  59 cell.textLabel.text = @"奧迪";  60 }else if (1 == indexPath.row) // 第0組第1行  61  {  62 cell.textLabel.text = @"寶馬";  63  }  64  65 }else if (1 == indexPath.section) // 第1組  66  {  67 if (0 == indexPath.row) { // 第0組第0行  68 cell.textLabel.text = @"本田";  69 }else if (1 == indexPath.row) // 第0組第1行  70  {  71 cell.textLabel.text = @"豐田";  72 }else if (2 == indexPath.row) // 第0組第2行  73  {  74 cell.textLabel.text = @"馬自達";  75  }  76  }  77  78 // 3.返回要顯示的控件  79 return cell;  80  81 }  82 /**  83 

轉載于:https://www.cnblogs.com/txsx/p/5481712.html

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

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

相關文章

PL/SQL 08 異常 exception

--PL/SQL錯誤 編譯時 運行時--運行時的出錯處理 EXCEPTION --異常處理塊DECLARE …BEGIN …EXCEPTION WHEN OTHERS THEN handler_error(…);END; --用戶自定義的異常DECLARE e_TooManyStudents EXCEPTION; …BEGIN … RAISE e_TooManyStudents; …EXCEPTION WHEN e_TooMany…

html鼠標事件沒反應,鼠標有時候點擊沒反應怎么解決

關于鼠標有時候點擊沒反應的問題&#xff0c;一些網友顯得一頭霧水&#xff0c;那這該怎么解決呢?下面就由小編來給你們說說鼠標有時候點擊沒反應的原因及解決方法吧&#xff0c;希望可以幫到你們哦!鼠標有時候點擊沒反應的解決方法一&#xff1a;一&#xff0c;系統繁忙&…

動態ADF火車:以編程方式添加火車停靠站

我將展示如何以編程方式“即時”將火車停靠站添加到ADF火車中。 在我的用例中&#xff0c;我有一些票務預訂應用程序。 它具有訓練模型的有限任務流。 在火車的第一站&#xff0c;用戶輸入乘客的數量&#xff0c;在隨后的站點&#xff0c;他們輸入一些乘客的信息。 帶有乘客信息…

修改sqlserver的數據庫排序規則語句

alter database SOETMS collate Chinese_PRC_CI_AS 轉載于:https://www.cnblogs.com/lxboy2009/p/5481977.html

關于存儲過程權限

關于ORACLE賬號的權限問題&#xff0c;一般分為兩種權限&#xff1a; 系統權限: 允許用戶執行特定的數據庫動作&#xff0c;如創建表、創建索引、創建存儲過程等 對象權限: 允許用戶操縱一些特定的對象&#xff0c;如讀取視圖&#xff0c;可更新某些列、執行存儲過程等 像這種查…

寧波鎮海2021年高考成績查詢,最新!2021年,寧波鎮海區的這14所中小學“爆了...

寧波鎮海區教育局發布了2021年公辦學校小學一年級、初中一年級招生第一次預警&#xff0c;這也是寧波首個發布2021年公辦學校招生預警的縣、市、區。根據最新數據摸排&#xff0c;寧波鎮海區有8所小學紅色預警、2所初中紅色預警&#xff0c;1所小學黃色預警、3所初中黃色預警。…

用Java解決生產者-消費者問題

當我們嘗試多線程編程時&#xff0c;生產者-消費者問題是最常見的問題之一。 盡管不像多線程編程中的其他一些問題那樣具有挑戰性&#xff0c;但是錯誤地實現此問題可能會造成應用程序混亂。 生產的物品將不使用&#xff0c;開始的物品將被跳過&#xff0c;消耗量取決于生產是在…

哪位科學家奠定了計算機結構理論,計算機等級考試一級理論知識選擇題題庫(1-50)...

領域中的問題為主的數值計算稱為科學計算B)計算機應用可分為數值應用和非數值應用兩類C)計算機各部件之間有兩股信息流&#xff0c;即數據流和控制流D)對信息(即各種形式的數據)進行收集、儲存、加工與傳輸等一系列活動的總稱為實時控制答案&#xff1a;D32. 金卡工程是我國正在…

axios 參數為payload的解決方法

1. 添加頭部headers headers: {Content-Type: application/x-www-form-urlencoded,}, axios.post(url, {a: 1, b:2}, {headers: {Content-Type: application/x-www-form-urlencoded,}, }).then(response > response.data).then(err > {console.log(err);}); 2. 在Browser…

超出了GC開銷限制– Java堆分析

這篇文章是我們原來的GC超出限制的問題模式帖子的延續。 正確的Java堆分析對于消除O??utOfMemoryError&#xff1a;GC開銷問題至關重要。 如果您不熟悉此Java HotSpot 1.6錯誤&#xff0c;建議您首先閱讀有關此主題的第一篇文章 。 本文將為您提供一個示例程序和一個教程&…

開燈問題

開燈問題 時間限制&#xff1a;3000 ms | 內存限制&#xff1a;65535 KB難度&#xff1a;1描述有n盞燈&#xff0c;編號為1~n&#xff0c;第1個人把所有燈打開&#xff0c;第2個人按下所有編號為2 的倍數的開關&#xff08;這些燈將被關掉&#xff09;&#xff0c;第3 個人按…

計算機科學基本理論,計算機科學的基礎知識.ppt

計算機科學的基礎知識第二章 計算機科學的基礎知識 本章學習目標&#xff1a; 數據的理解、分類與表示 計算機的基本結構與工作原理 程序設計基礎 算法基礎 2.1 數據類型 2.2 計算機內部的數據 2.3 表示數據 2.4 十進制表示法 2.5 二進制表示法 2.6 十六進制表示法 2.7 八進制表…

損壞注冊表的原因

軟件: &#xff08;1&#xff09;應用程序錯誤 &#xff08;2&#xff09;驅動程序不兼容或使用了錯誤的應用程序 &#xff08;3&#xff09;應用程序在注冊表中添加了錯誤的內容 &#xff08;4&#xff09;應用程序添加了錯誤的數據文件和應用程序之間的聯系 硬件: &#xff0…

cdockpane限制調整大小_影視后期制作小伙伴必看:使用AU對聲音質量進行調整的三大技巧...

一、增幅一般人進入AU的音頻調整界面&#xff0c;會使用圖中的旋鈕進行音量調整&#xff0c;這種操作是錯誤的&#xff0c;因為通過拖拽并不能確定調整音量的大小幅度&#xff0c;精準度極低&#xff0c;反復操作才能試出最佳音量&#xff0c;效率極低。最優方案是使用左側效果…

html5css3js文件作業,HTML5 CSS3 JavaScriptWeb前端開發自測試卷2.docx

自測試卷2一、選擇題1&#xff0e;使用標簽在網頁中成功地添加一張圖片&#xff0c;必不可少的屬性是( )。A&#xff0e;alt B&#xff0e;title C&#xff0e;src D&#xff0e;width2&#xff0e;使用CSS設置鼠標放置在鏈接上時的樣式應使用以下哪個選擇器( )。A&#xff0e;…

線程故事:Web應用程序中的ThreadLocal

本周&#xff0c;我花了一些合理的時間來消除Web應用程序中的所有ThreadLocal變量。 原因是他們造成了類加載器泄漏&#xff0c;我們不能再適當地取消部署我們的應用程序。 取消部署應用程序后&#xff0c;當GC根目錄繼續引用應用程序對象時&#xff0c;將發生類加載器泄漏。 如…

n-1位數

n-1位數 時間限制&#xff1a;3000 ms | 內存限制&#xff1a;65535 KB難度&#xff1a;1描述已知w是一個大于10但不大于1000000的無符號整數&#xff0c;若w是n(n≥2)位的整數&#xff0c;則求出w的后n-1位的數。 輸入第一行為M&#xff0c;表示測試數據組數。接下來M行&…

Android之封裝好的異步網絡請求框架

1.簡介 Android中網絡請求一般使用Apache HTTP Client或者采用HttpURLConnection&#xff0c;但是直接使用這兩個類庫需要寫大量的代碼才能完成網絡post和get請求&#xff0c;而使用這個MyHttpUtils庫可以大大的簡化操作&#xff0c;它是基于HttpURLConnection&#xff0c;所有…

華潤置地php面試題_從一流到頂流|2020華潤置地與沈陽一起美好

如果用一句話來形容華潤置地進入沈陽13年的發展歷程&#xff0c;你認為是什么&#xff1f;“從優秀到卓越”。用2020年的語言你給我翻譯一下&#xff1f;“從一流到頂流”&#xff01;01/ 初識的美好猶記2007年1月&#xff0c;央企華潤置地首進沈陽&#xff0c;在大館原址呈現出…

金融工作用計算機嗎,為什么計算機專業的人想轉金融,而金融專業的想轉計算機?...

1首先兩個專業都很有前途。如果好好學IT&#xff0c;應該是走技術路線&#xff0c;30歲后逐漸開始搞些管理或者設計之類的。當然&#xff0c;繼續搞技術也沒問題。只是要不斷學習&#xff0c;因為發展很快&#xff0c;IT業自身不斷更新。很多人說IT枯燥&#xff0c;難學&#x…