【问题标题】:UITableViewController truncating section header titleUITableViewController 截断节标题标题
【发布时间】:2010-04-29 23:22:16
【问题描述】:

我有一个带有 UITableViewController 的 iPad 应用程序。我正在使用

为我的表格部分设置标题标题
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section

当表格加载时,如果我向下滚动太快,当节标题出现在屏幕上时,它将被截断为第一个字母并且...(即“Holidays”被截断为“H...”)。如果我继续向下滚动,直到标题离开视图顶部,然后再向上滚动到它,标题就会完整显示。

有没有人经历过这种情况?

【问题讨论】:

    标签: uitableview ipad


    【解决方案1】:

    请确保您在titleForHeaderInSection 中返回nil,用于您需要标题的部分,而不是@""

    无论出于何种原因,iPad 在滚动时都使用空字符串的长度作为标题文本长度,然后不会重绘标题(而在 iPhone 上它会这样做)。为不需要标题的部分返回 nil 会在 iPhone 和 iPad 上产生所需的行为。

    例如,下面的代码正确地绘制了标题:

    - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {
        switch (section) {
            case NUM_SECTIONS-2:
                return @"Second to last";
                break;
            case NUM_SECTIONS-1:
                return @"last";
                break;
            default:
                return nil;
                break;
        }
    }
    

    当快速滚动通过标题时,下面的代码显示“...”:

    - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {
        switch (section) {
            case NUM_SECTIONS-2:
                return @"Second to last";
                break;
            case NUM_SECTIONS-1:
                return @"last";
                break;
            default:
                return @"";
                break;
        }
    }
    

    【讨论】:

    • 非常感谢您的解决方法!多么奇怪的小虫子。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-24
    • 1970-01-01
    • 2022-01-14
    • 2011-09-07
    • 2015-11-26
    • 1970-01-01
    • 2013-08-20
    相关资源
    最近更新 更多