2011-01-03 18 views
3

異なる高さのUITableViewCellでUITableViewを設定しようとしています。 (のUITableView *)のtableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 異なる高さのUITableViewCell

に見えますが、セルの高さはで使用されていることを好きな私は

  • で右のサイズ(CGFloat)のtableViewを返していますフレームワークはどこかにありますが、デキューされたセルはまだ同じサイズです。

    私はまた、個々のセルでsetFrame:を試してみましたが、それでも効果はありません。私はそう

    - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 
    { 
        if (condition 1) 
         return 60; 
        else if (condition 2) 
         return 100; 
        return 44; 
    } 
    
        - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
        { 
    static NSString *CellIdentifier = @"TableViewCell"; 
    
    
        TableViewCell *cell = (TableViewCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
        if (cell == nil) 
        { 
         cell = [[[TableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease]; 
        } 
    
        return cell; 
    } 
    

答えて

2

例えば何か

をしないのです、ここでの取引があります。 TableViewCellの実装では、私は複雑なレイアウトを作成していました。そして、私は[self.contentView addSubView:]の代わりに[self addSubview:]を持っていたUILabelsの1つを間違えて、これが原因でした。

関連する問題