2

我有一个视图,我试图将其用作 UITableView 的标题部分。

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
    UILabel *name= (UILabel *)[myView viewWithTag:200];
    name.text = @"title";

    myView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"row-bg-red.png"]];

    return myView;
}

它加载正常,但是当我向下滚动并出现下一个标题时,前一个标题相反:它消失了。

有什么建议吗?

4

1 回答 1

1

我猜你重用了一个视图。这是不可能的。每个视图(UIView 子类)只能在视图层次结构中出现一次。因此,在您的情况下可能发生的情况是,当您设置第二部分视图时,它会从您上次为第一部分放置的原始位置中删除。

您可以每次直接在- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section方法中创建一个新的节标题视图。

于 2012-04-22T20:17:42.867 回答