2
我試圖用這個方法來繪製一個字符串轉換爲自定義的UITableViewCell。的NSString drawInRect與UILineBreakModeTailTruncation不會出現在「...」
[self.text drawInRect:TEXT_RECT withFont:font lineBreakMode:UILineBreakModeTailTruncation alignment:UITextAlignmentLeft];
的問題是,如果文本太長,文字實際上是尾巴截斷,但它不顯示「...」
如果我使用drawInPoint
[self.text drawAtPoint:CGPointMake(60, 0) forWidth:200 withFont:font minFontSize:15 actualFontSize:nil lineBreakMode:UILineBreakModeTailTruncation
baselineAdjustment:UIBaselineAdjustmentAlignBaselines];
然後,我得到「...」,但現在它使我所有的文本都成爲一行,所以相當長的文本會過早被截斷。例如:
如果我有文字"Hello all, here is my first book"
。如果我使用drawInRect,那麼我可以在2行顯示它,但如果我用drawAtPoint,我只看到像第一行:"Hello all, here ..."
因此,任何的幫助,使這兩種方法的工作可以理解
這裏是我的TEXT_RECT:#定義TEXT_RECT CGRectMake(60,0,200,200) 我認爲這是大到足以包含任何文本。在我的手機中,它可以包含多達2行的文本 – vodkhang 2010-10-12 03:45:07
這看起來確實夠大。你在做自定義繪圖的'UIView'有多大?如果它小於兩行文本並且「clipsToBounds」設置爲「YES」,則可能會剪裁您的圖形。 – 2010-10-12 03:52:47
我正在繪製UITableViewCell,單元格的高度是44,我認爲clipsToBounds是YES。然後,我怎樣才能以編程方式顯示「...」 – vodkhang 2010-10-12 04:03:31