-1

我在 phonegap 和 sencha 中开发了一个应用程序。
在那我为div写了一个css来适应文本。
但是在本机应用程序中,如果文本增加,则标签无法显示全文,它显示了一些文本和点。
我想显示全文。我不知道怎么可能。如果可能的话,请建议我。

4

2 回答 2

0

创建一个单独的类型类UITableViewCell让我们说MyTableCell

然后MyTableCell根据您的需要设计该类中的单元格。

现在您可以使用MyTableCellindatasource方法的对象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 回答