IOS 學習之路(一) 徒手寫介面(4)控制項(1)

2021-07-16 08:49:12 字數 1819 閱讀 6650

好久麼寫了,因為一直在趕專案。所以一直沒空寫部落格,今天下午有點時間 我來說說我對控制項的理解吧 也是對自己學習的乙個總結。

ios日常常用的控制項:其實不是很多 也就uilabel,uitableview,uiimageview,uitextfield,uibutton等等。。

首先拿到ui給的介面後進行分析,用什麼控制項去完成某個部分,

比如下個這個列表一樣的東西 是用tableview比較好 還是用自定義的view

如果用tableview的話 用自定義的cell 還是系統自帶的cell 等等的問題。

我剛剛進公司的時候 遇到這個 師兄們都說用view寫,我看他一口氣寫五個view,controller上面都是view 看他的**我頭疼。

我就自己用tableview 重寫吧,tableviewcell 用自帶的還是自定義的那

cell系統自帶的話有4種分別是:

typedef ns_enum(nsinteger, uitableviewcellstyle) ;
#pragma mark ——tableview——

-(uitableviewcell *)tableview:(uitableview *)tableview cellforrowatindexpath:(nsindexpath *)indexpath

[cell setseparatorinset:uiedgeinsetszero];//cell下劃線長度

cgsize size = cgsizemake(25*height_scale, 25*height_scale);

uiimage *image = [uiimage imagenamed:self

.array[2*indexpath.row]];

cell.imageview

.image = image;

cell.imageview

.size = size;

//調整image的大小

uigraphicsbeginimagecontextwithoptions(size, no,0.0);

cgrect imagerect=cgrectmake(0.0, 0.0, size.width, size.height);

[image drawinrect:imagerect];

cell.imageview

.image=uigraphicsgetimagefromcurrentimagecontext();

uigraphicsendimagecontext();

cell.textlabel

.text = self

.array[2*indexpath.row+1];

return cell;

}-(nsinteger)numberofsectionsintableview:(uitableview*)tableview

//多少組//

-(nsinteger)tableview:(uitableview *)tableview numberofrowsinsection:(nsinteger)section

//多少行

#pragma mark ——懶載入——

-(uitableview *) icontableview

return _icontableview;

}-(nsarray *) array

return _array;

}

至於布局我就不寫了。

IOS 學習之路(一) 徒手寫介面(3)使用框架

有麼有覺得原來的定位太麻煩了哪!我們來使用乙個比較簡單,我也很喜歡的框架masonry吧 他的用法很簡單 我們建立乙個方法叫layouinsubview 我們把控制項定位全部都放在這裡 void layouinsubview self.phonetextfield mas makeconstrain...

python介面自動化學習之路(4)

1.迴圈讀取excel裡的case 2.將響應結果寫入乙個新的excel 需要引入xlwt import requests import xlrd import json import xlutils import xlwt import time excelfile r users documen...

學習遠控介面設計一 程式介面大小

新建乙個mfc工程。分別為如下 分別將最大化和最小化開啟。程式會這樣。如何讓程式跟隨大小自己變化。先給控制項新增變數。同時給視窗新增響應訊息。void cghostdlg onsize uint ntype,int cx,int cy if m list msg.m hwnd null 改變日誌框大...