一、載入xib檔案的兩種方式
1.方法一(newscell是xib檔案的名稱)
nsarray *objects = [[nsbundle mainbundle] loadnibnamed:@"newscell" owner:nil options:nil];
2.方法二
uinib *nib = [uinib nibwithnibname:@"newscell" bundle:nil];
nsarray *objects = [nib instantiatewithowner:nil options:nil];
二、設定cell的高度
1.如果每一行cell的高度都是一樣的,直接使用tableview的rowheight屬性設定cell的高度即可
tableview.rowheight = 80;
2.如果每一行cell的高度不一定一樣,應該用**方法設定cell的高度
- (cgfloat)tableview:(uitableview *)tableview heightforrowatindexpath:(nsindexpath *)indexpath
// 返回indexpath這行對應cell的高度
return
80;三、uitableviewcontroller
1.uitableviewcontroller內部缺省會建立乙個uitableview *tableview
2.uitableviewcontroller內部tableview的delegate(**)和datasource(資料來源)就是這個uitableviewcontroller
3.uitableviewcontroller內部tableview就是控制器的view
四、自定義cell
1.通過xib
1> 一定要注意在xib的cell中設定重用標識(reuse identifier)
2> 封裝的步驟
* 新建xib描述cell的樣子---dealcell.xib
* 新建uitableviewcell的子類---dealcell(封裝xib內部的所有東西)
* 修改xib中cell的類名(class)為dealcell
* 在dealcell中擁有xib中的所有子控制項(宣告屬性、進行連線)
* 新建模型deal,封裝資料
* 給dealcell增加模型屬性
@property(nonatomic, strong) deal *deal;
* 重寫setdeal:方法,在這個方法中根據模型資料設定cell內部子控制項的屬性
* 提供乙個類方法,返回從xib中建立好的cell物件
* 給xib中的cell新增乙個重用標識(比如deal),提供乙個類方法,返回重用標識
* 提供乙個類方法,返回cell的高度
3> 使用cell
* 設定每一行cell的高度
* 利用重用標識去快取池取得cell
* 如果快取池沒有cell,建立cell
* 傳遞模型給cell
2.通過**
1> 新建乙個uitableviewcell的子類---weibocell
2> 在建立cell的時候(initwithstyle:reuseidentifier:方法中)新增cell內部需要使用的子控制項
(注意:只管建立新增子控制項,先不要去管子控制項的位置和尺寸)
3> 新建乙個模型類---weibo,增加對應的資料屬性
4> 給weibocell增加乙個weibo模型屬性,在拿到weibo模型資料的同時設定子控制項的屬性
5> 重寫setweibo:方法,在這裡面取出weibo模型的資料顯示到子控制項上
載入自定義 cell 的 XIB 檔案 的兩種方式
自定義單元格如果是使用 ib 方式建立的,則需要手動載入,因為 xib 上的 cell 不會自動載入 第一種 使用應用程式束 應用程式束 nsbundle 獲得工程中所有的資源的路徑,相當於當前工程的目錄。獲得指定的xib中所有的檢視 nsarray array nsbundle mainbundl...
Python載入csv檔案的兩種方式
本文主要講解下python載入csv檔案的兩種方式,如果知道如何處理的就不必往下看了!下面來簡單介紹下。例項中的資料集是kaggle的digit recognizer的train.csv檔案,資料格式很特別也很普遍,截圖如下 csv檔案中每行資料的每個特徵列都是用逗號 隔開。csv檔案中除了儲存數值...
頁面載入JS兩種方式
第一種 window.onload function 第二種 document ready function 或簡寫 function 區別 1.執行時間 window.onload必須等到頁面內包括的所有元素載入完畢後才能執行。document ready 是dom結構繪製完畢後就執行,不必等到載...