【问题标题】:Three20 framework, how to change default row height TTTableView?Three20框架,如何更改默认行高TTTableView?
【发布时间】:2011-02-15 17:40:16
【问题描述】:

我正在使用 TTListDataSource 来填充 TTTableViewController。

这是我用来填充 TTListDatSource 项目数组的代码:

NSString *text = [NSString stringWithFormat:@"<b>%@</b><br/>%@", someObject.title, someObject.text];
TTStyledText *styledText = [TTStyledText textFromXHTML:text lineBreaks:YES URLs:YES];
[items addObject:[TTTableStyledTextItem itemWithText:styledText]];

我想更改 TTTableView 使用的默认行高,目前为 2 行高。

任何想法我该怎么做?

我尝试在代码的几个部分中使用这些属性,但没有成功:

TTTableViewController.variableHeightRows = YES; 
TTStyledText.setNeedsLayout;
TTStyledText sizeToFit;

【问题讨论】:

    标签: iphone uitableview three20


    【解决方案1】:

    如果您使用 variableHeightRows,那么您需要在表格单元格类中实现:

    + (CGFloat)tableView:(UITableView*)tableView rowHeightForObject:(id)object;
    

    请注意,使用variableHeightRows 会导致框架遍历整个数据源并调用此方法来获取表格的整体高度。如果所有行的高度相同,那么在loadView 的TTTableViewController 子类中,您应该设置tableView 的rowHeight 属性。

    【讨论】:

    • Three20 似乎没有在我的 TTTableViewCell 子类中识别此方法,因为它甚至没有调用它。你知道可能出了什么问题吗?
    【解决方案2】:

    我在这里回答自己。

    一种解决方案是重写 TTTableViewController 的 initWithNibName 方法,如下所示:

    - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
    if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]) {
        self.variableHeightRows = YES;
    
    }
    return self;
    

    }

    第二种方法是使用 TTTableViewDragRefreshDelegate 作为 TTableViewController 的委托。此委托将 variableHeightRows 设置为 true。

    - (id<UITableViewDelegate>)createDelegate {
    return [[[TTTableViewDragRefreshDelegate alloc] initWithController:self] autorelease];}
    

    【讨论】:

      【解决方案3】:

      我的解决方案:

      我只是将这两行移到 viewDidLoad 方法中;这对我有用!

      - (void)viewDidLoad
      {
          self.title = @"E-Mail";
          self.variableHeightRows = YES;
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-10-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-06-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多