1.文字在控件中垂直居中顯示项阴。(根據(jù)一個字體笆包,計算出控件的大小,要求字體能夠垂直居中顯示略荡。上下的距離都相等)
遇到的問題:
1>如果我們直接根據(jù)文字在一個限定的范圍內(nèi)計算其size(寬高),在控件中顯示的結(jié)果是不完整的/不是垂直居中的汛兜,因為你設置了行距l(xiāng)ineSpace = 常量,在最后一行結(jié)束時也會額外加上這個行距
2>UITextView的textContainerInset的默認值是(8,0肛根,8,0)派哲,上部和下部會有一個8個點的內(nèi)切區(qū)域
解決辦法:
1>計算出來的文字的高度,加上你設置的一個行距l(xiāng)ineSpace = 常量芭届,再加上上部額外內(nèi)切的距離(等于一個行距)储矩,這樣就能夠使文字在控件中垂直居中顯示了褂乍。也就是:文字的高度+2倍的行距持隧。
2>設置了行距之后逃片,UITextview控件默認會在最后一行結(jié)束時添加一個行距的屡拨。
2.如果在自定義VC中褥实,自定義了presentViewController:nil animated:NO completion:nil這個方法洁仗,即使設置狀態(tài)欄的樣式由控制器控制性锭,由這方法推出來的控制器的preferStateBarStyple方法不會再被調(diào)用赠潦,需要系統(tǒng)的presentView方法推出的控制器才會執(zhí)行preferStateBarStyple這個方法草冈。