我在 phonegap 和 sencha 中开发了一个应用程序。
在那我为div写了一个css来适应文本。
但是在本机应用程序中,如果文本增加,则标签无法显示全文,它显示了一些文本和点。
我想显示全文。我不知道怎么可能。如果可能的话,请建议我。
问问题
104 次
2 回答
0
创建一个单独的类型类UITableViewCell
让我们说MyTableCell
然后MyTableCell
根据您的需要设计该类中的单元格。
现在您可以使用MyTableCell
indatasource
方法的对象tableView
来实际放置表格
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
MyTableCell *cell = [MyTableCell alloc]init];
cell = [tableView dequeueReusableCellWithIdentifier:@"cellIdentifier"];
// Processing
return cell;
}
希望对你有帮助
于 2013-09-05T06:30:17.013 回答
0
您需要做的是首先根据字体和大小获取文本的高度,然后返回每个单元格的 UITableViewCell 的高度。
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
NSString *aMessage;
if ([self.messageArray count] >0) {
aMessage = [self.messageArray objectAtIndex:indexPath.row];
}
CGSize maximumSize = CGSizeMake(270, 9999);
UIFont *textFont = [UIFont fontWithName:@"Helvetica-Bold" size:MessageFontSize];
CGSize myStringSize = [aMessage sizeWithFont:textFont
constrainedToSize:maximumSize
lineBreakMode:NSLineBreakByWordWrapping];
return myStringSize.height+10 //to have some extra space b/w cells +10;
}
然后在 UITableViewCell 中添加一个自定义标签。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
//
static NSString *CellIdentifier = @"LazyTableCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil){
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
}
NSString *aMessage;
if ([self.messageArray count] >0) {
aMessage = [self.messageArray objectAtIndex:indexPath.row];
}
UILabel *messageTextLabel = [[UILabel alloc] initWithFrame:CGRectMake(5, 10, 270, 0)];
messageTextLabel.backgroundColor = [UIColor clearColor];
messageTextLabel.numberOfLines = 0;
messageTextLabel.lineBreakMode = NSLineBreakByWordWrapping;
messageTextLabel.font = [UIFont fontWithName:@"Helvetica-Bold" size:MessageFontSize];
messageTextLabel.text = aMessage;
[messageTextLabel sizeToFit];
[cell addSubview:messageTextLabel];
cell.selectionStyle= UITableViewCellSelectionStyleNone;
return cell;
}
于 2013-09-05T06:30:37.357 回答