升級了xcode5, 適配ios7. 各種坑爹問題..
今天又碰到了一個。
textview的高度無法正確計算.(之前可以通過textView.contentSize.height來獲取一個float類型的高度)
但是在ios7上,發現這玩意不管用了。
調試了好多遍,發現打印出來的結果都是最早設置的frame高度。 無法動態改變。
蛋疼的。
後來找了一遍,才發現一種解決辦法。
if (isIos7System)
{
CGRect txtFrame = textview.frame;
textview.frame = CGRectMake(0,65+imageview.frame.size.height,320,txtFrame.size.height =[[NSString stringWithFormat:@"%@\n ",textview.text]
boundingRectWithSize:CGSizeMake(txtFrame.size.width, CGFLOAT_MAX)
options:NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading
attributes:[NSDictionary dictionaryWithObjectsAndKeys:textview.font,NSFontAttributeName, nil] context:nil].size.height);
textview.frame = CGRectMake(0,65+imageview.frame.size.height,320,txtFrame.size.height);
[self.view addSubview:textview];
}
這樣就能獲取textview的高度。
另外。isIos7System是個宏定義,
#define isIos7System [[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0