在tableView Cell中部分显示标题?
我试图在Tableview单元格中显示标题数据但它部分显示(...)我想在表格单元格中显示完整标题可能会在两行或三行中使用自定义单元格并使用标签和集标签属性,但仍数据部分在tableView Cell中部分显示标题?
titleLabel.text = aNewsInfo.title;
显示任何一个可以建议我克服这个概率的方式......提前
谢谢...
也许你可以试试:
[titleLabel sizeToFit];
而且你需要调整单元格的高度:
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
标签的财产需要设置
adjustsFontSizeToFitWidth
A Boolean value indicating whether the font size should be reduced in order to fit
the title string into the label’s bounding rectangle.
@property(nonatomic) BOOL adjustsFontSizeToFitWidth
而且
numberOfLines
The maximum number of lines to use for rendering text.
@property(nonatomic) NSInteger numberOfLines
Discussion
This property controls the maximum number of lines to use in order to fit the label’s text into its bounding rectangle. The default value for this property is 1. To remove any maximum limit, and use as many lines as needed, set the value of this property to 0.
If you constrain your text using this property, any text that does not fit within the maximum number of lines and inside the bounding rectangle of the label is truncated using the appropriate line break mode.
When the receiver is resized using the sizeToFit method, resizing takes into account the value stored in this property. For example, if this property is set to 3, the sizeToFit method resizes the receiver so that it is big enough to display three lines of text.
试试这个代码:
myLabel.lineBreakMode = UILineBreakModeWordWrap;
myLabel.numberOfLines = 2; // 2 lines ; 0 - dynamical number of lines
myLabel.text = @"Lorem ipsum dolor sit\namet...";
阿曼这将工作,但只有硬编码文本,如 cell.textLabel.lineBreakMode = UILineBreakModeWordWrap; cell.textLabel.numberOfLines = 2; cell.textLabel.text = aNewsInfo.title; 但在 titleLabel.lineBreakMode = UILineBreakModeWordWrap; titleLabel.numberOfLines = 2; titleLabel.text = aNewsInfo.title; 但是这并没有在tableView单元中只是空白我应该怎么做... – user755278 2011-05-31 08:19:37
你改变了标签的高度,对于动态数据设置numberoflines = 0,如上所述。 – 2011-05-31 09:03:15
是的,我已经改变了所有的高度n正确设置numberofline为0,但仍然是同样的问题... – user755278 2011-05-31 18:12:16
喜尝试在你的cellforRow方法中添加标签
CGSize labelsize;
UILabel *commentsTextLabel = [[UILabel alloc] init];;
commentsTextLabel.tag =50;
[commentsTextLabel setNumberOfLines:0];
[commentsTextLabel setBackgroundColor:[UIColor clearColor]];
NSString *text=[@"dasdasdasdasfasfasfasfasfasfsafasfsafasfasfasfasfsafsafasfasfsaf"];
[commentsTextLabel setFont:[UIFont fontWithName:@"Helvetica"size:14]];
labelsize=[text sizeWithFont:commentsTextLabel.font constrainedToSize:CGSizeMake(268, 2000.0) lineBreakMode:UILineBreakModeWordWrap];
commentsTextLabel.frame=CGRectMake(10, 24, 268, labelsize.height);
[cell.contentView addSubview:commentsTextLabel];
[commentsTextLabel release];
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
CGSize labelsize;
UILabel * textDesc1 = [[UILabel alloc] init];
[textDesc1 setNumberOfLines:0];
textDesc1.text=[@"dasdasdasdasfasfasfasfasfasfsafasfsafasfasfasfasfsafsafasfasfsaf"];
[textDesc1 setFont:[UIFont fontWithName:@"Helvetica" size:14.0]];
labelsize=[textDesc1.text sizeWithFont:textDesc1.font constrainedToSize:CGSizeMake(268, 2000.0) lineBreakMode:UILineBreakModeWordWrap];
labelsize.height=labelsize.height+35;
[textDesc1 release];
return (CGFloat)labelsize.height;
}
因为我用自定义单元格,所以我做的事情与IB我设置属性行至3,也可以通过拖动边界增加标签的大小,但现在的标题是完全隐藏只显示三个点(...)。现在,我应该怎么做... – user755278 2011-05-31 08:02:17
您将行数设置为0和最小字体大小。 – 2011-05-31 08:16:14