今天在寫(xiě)醫(yī)生端,查看報(bào)告模塊時(shí)挺份,發(fā)現(xiàn)個(gè)人端相同模塊的tableViewCell竟然沒(méi)有自適應(yīng),現(xiàn)在更改了題目?jī)?nèi)容后就成了這個(gè)樣子:
突然想起來(lái)年前看到過(guò)很簡(jiǎn)單的使用autolayout實(shí)現(xiàn)自適應(yīng)的方法杈笔,就動(dòng)手做了一下鱼冀。
我是使用storyboard來(lái)實(shí)現(xiàn)的,首先搭建界面:
然后首先拉左側(cè)綠色方塊的約束任连,先確定一個(gè)view的固定位置蚤吹,好為右側(cè)的其他view提供參照:
因?yàn)檫@次設(shè)定為中間藍(lán)色的label為自適應(yīng)變化的,變化時(shí)高度是根據(jù)內(nèi)容來(lái)改變的,所以中部label的上下約束應(yīng)該相對(duì)于superview來(lái)拉:
最后剩下的就是橙色和黃色的label啦裁着,我把這兩個(gè)設(shè)置的為距中部label的距離固定繁涂,左右分別與藍(lán)色label對(duì)齊。步驟如下:
好了約束拉好了二驰,把label的行數(shù)設(shè)為0:
然后加上這兩行代碼(/(ㄒoㄒ)/~~ 沒(méi)在sb里面找到相應(yīng)的屬性):
//設(shè)行高為自動(dòng)計(jì)算
self.tableView.rowHeight = UITableViewAutomaticDimension;
//預(yù)計(jì)行高
self.tableView.estimatedRowHeight = 100;
//在cellForRowAtIndexPath方法中加上扔罪,此方法不加也沒(méi)有問(wèn)題.
[cell layoutIfNeeded];
到這里,簡(jiǎn)單地自適應(yīng)cell就完成了桶雀。效果圖如下:
DEMO地址:UITableViewAutolayoutCell
努力進(jìn)階中/(ㄒoㄒ)/~~矿酵,寫(xiě)的不對(duì)的歡迎指出。