如何在每行的cellForRowatIndexpath方法中为nsmutablearray添加值?

时间:2014-07-28 08:59:17

标签: objective-c uitableview ios7 nsmutablearray

我正在尝试添加每个ui表视图单元格的textview的行数。为此我在rowatIndexpath中创建了一个nsmutable数组,并尝试在该数组中添加值.Problem是只添加了一个值数组而不是uitable view.plz帮助的所有10/10值。

linesAtRowIndexPath在同一文件中被声明为扩展名。

linesAtRowIndexPath = [[NSMutableArray alloc ]init];
int lines = cell.txtViewMessage.contentSize.height / cell.txtViewMessage.font.lineHeight;

int height ;


if(lines > 6 )
{
    height =220;


    [linesAtRowIndexPath addObject:[NSNumber numberWithInt:height]];
}
   else{


    height = 100;
       [linesAtRowIndexPath addObject:[NSNumber numberWithInt:height]];

}

3 个答案:

答案 0 :(得分:0)

实现此目的的常用模式是在tableViewCell子类中使用类方法,如+(CGFloat)height,它返回一个值。 在您的情况下,您可能会有类似+(CGFloat)heightWithText:的内容并在那里进行计算。

答案 1 :(得分:0)

如果您想在textview单元格中计算行数,可以通过调用此方法来执行此操作:

-(int)getLine:(UITextView *)txtView{
    int txtLine = txtView.contentSize.height / txtview.font.lineHeight;
    return txtLine;
}

答案 2 :(得分:0)

在viewWillAppear中分配您的数组,而不是cellForRowAtIndexPath 愿这帮你.. !!