最近在做**,做到分類覺得網上應該一大把現成的**。搜了一會沒有搜到,懶人也懶不了了。
寫了一會感覺還是有點需要思考的,寫下思路和貼上**,可以參考下。
最後作品:
類似qq分組列表怎麼做就不說。我把子分類和**分類放到乙個cell裡了,所以核心**都在
-(uitableviewcell
*)tableview:(
uitableview
*)tableview cellforrowatindexpath:(
nsindexpath
*)indexpath這個方法裡面
**如下
-(uitableviewcell
*)tableview:(
uitableview
*)tableview cellforrowatindexpath:(
nsindexpath
*)indexpath
else
nsdictionary
* headdic =
self
.datasource
[indexpath.
section];
nsarray
* headsubarray = headdic[
@"subs"];
nsdictionary
* subdic = headsubarray[indexpath.
row];
uilabel
* subtitlelabel = [[
uilabel
alloc
]initwithframe
:cgrectmake(30
, 0, screenwidth-20
, 40
)];
subtitlelabel.
font
= [
uifont
systemfontofsize:15
]; subtitlelabel.
text
= subdic[
@"title_zh"];
[cell.
contentview
addsubview
:subtitlelabel];
nsarray
* subarray = subdic[
@"subs"];
cgfloat
sumwidth =
0.0f;
nsinteger
row=0;
for(inti=0
; icount
; i++) ;
nsstringdrawingoptions
options =
nsstringdrawinguseslinefragmentorigin
| nsstringdrawingusesfontleading;
cgsize
boundsize =
cgsizemake
(screenwidth
, cgfloat_max);
cgrect
requiredsize = [subarray[i][
@"title_zh"
] boundingrectwithsize
:boundsize
options
:options
attributes
:attribute
context
:nil];
uibutton
* btn = [[
uibutton
alloc
]initwithframe
:cgrectmake(30
+sumwidth,
40+row*
30, requiredsize.
size
.width
, 20
)];
[btn
settitle
:subarray[i][
@"title_zh"
] forstate
:uicontrolstatenormal];
[btn
settitlecolor
:uicolorfromrgb
(0xf6f6f6
) forstate
:uicontrolstatenormal];
[btn
setbackgroundcolor
:[uicolor
lightgraycolor
]];
btn.
layer
.cornerradius= 5
; btn.
titlelabel
.font
= [uifont
systemfontofsize:11
]; [cell.
contentview
addsubview
:btn]; if
((btn.
frame
.origin.x
+btn.
frame
.size
.width
)>
screenwidth
) else }
}cgrect
rect = cell.
frame;
rect.
size
.height
= 50+10
+row*30;
cell.
frame
= rect;
return
cell; }
-(cgfloat
)tableview:(
uitableview
*)tableview heightforrowatindexpath:(
nsindexpath
*)indexpath
難點和思路:
難點:1.獲取的最小一級的分類在按鈕上自適應
2.什麼時候換行需要判斷
3.高度自適應
解決思路:
取**分類的標題疊加,如果越界就換行。
頁面自適應
原文 首先,在網頁 的頭部,加入一行viewport元標籤。viewport是網頁預設的寬度和高度,上面這行 的意思是 網頁寬度預設等於螢幕寬度 width device width 原始縮 放比例 initial scale 1 為1.0 即網頁初始大小佔螢幕面積的100 由於網頁會根據螢幕寬度調...
網格自適應 Fluent網格自適應
1,前言 國慶剛過,馬上就要上班,上課了,祝福大家事業學業都有新的進步,新的前途。2,內容簡介 我們在平時做流體分析時,經常會遇到乙個問題,當畫好的網格匯入fluent計算時,看了分析結果,想讓某一部分我們關注的點更加細化一些,我們不得不重新去網格軟體裡調整網格。今天介紹的fluent自帶的網格自適...
網格自適應 網格自適應04 各向異性自適應
本文描述各向異性網格自適應方法應用。由於各向異性自適應 anisotropic adaption 僅適用於特定的網格型別,因此存在以下限制 利用按鈕 setting up domain adapt more anisotropic refinement.開啟anisotropic adaption設...