0

我正在使用UITableView带有自定义的UITableViewCell. 现在,该单元格上只有一个标签用于测试。

我遇到的问题是,当我使用以下代码时:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    HZEventCell *eventCell = [tableView dequeueReusableCellWithIdentifier:HZ_EVENT_CELL_REUSE_IDENTIFIER];

    EKEvent *event = [EKEvent eventWithEventStore:self.dataSource.eventStore];
    event.title = @"Document re-write meeting";
    eventCell.label.text = event.title;

    NSLog(@"Event: %@", event.title);

    return eventCell;
}

偏移电池问题

这会导致我的标签在应用加载时偏移,挂在屏幕边缘。如果我从我的实例中提取实际事件数据,EKEventStore则偏移量会根据事件标题而变化。有时整个标签在单元格中居中,有时标签在屏幕左边缘的 50% 处。如果我通过 NSLog 打印 event.title 的内容,则看不到任何格式问题。

当我使用以下代码时。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    HZEventCell *eventCell = [tableView dequeueReusableCellWithIdentifier:HZ_EVENT_CELL_REUSE_IDENTIFIER];

    NSString *title = event.title; //self.data[indexPath.row];
    eventCell.label.text = title;

    return eventCell;
}

标签显示文本没有任何问题。这不是我对数据源中的事件所做的事情,因为上面的代码让我创建了一个新事件,设置标题并将其分配给单元格的标签,这仍然给了我一个偏移量。看起来 cell.label.origin.x 等于 -25p。有谁见过这个或知道为什么会这样?我的 UITableViewCell 子类除了标题中标签的出口外没有其他代码。

请注意,我在 iOS 6 中遇到了这个问题,当我截取屏幕截图时,我恰好正在使用 iOS 7 SDK 进行此测试。

4

0 回答 0