3

新しい iOS 8 では、メソッドを実装しないheightForRowAtIndexPathと、複数行の行が正しい高さで表示されます。
しかし、iOS7への後方互換性を維持したい場合は、heightForRowAtIndexPathメソッドを実装する必要があります.
これをiOS8でのみ実装するにはどうすればよいですか?

4

1 に答える 1

5

定義ルールを使用する必要があります。

#define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v)  ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending)

使用方法は次のとおりです。

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
    if (!SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"8.0"))
        return 100.0;//your custom height here
    else
        return UITableViewAutomaticDimension;
}
于 2014-10-15T14:19:28.773 に答える