FLEXTableView.m 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. //
  2. // FLEXTableView.m
  3. // FLEX
  4. //
  5. // Created by Tanner on 4/17/19.
  6. // Copyright © 2019 Flipboard. All rights reserved.
  7. //
  8. #import "FLEXTableView.h"
  9. #import "FLEXSubtitleTableViewCell.h"
  10. #import "FLEXMultilineTableViewCell.h"
  11. @implementation FLEXTableView
  12. - (id)initWithFrame:(CGRect)frame style:(UITableViewStyle)style
  13. { self = [super initWithFrame:frame style:style];
  14. if (self) {
  15. [self registerCells:@{
  16. self.defaultReuseIdentifier: [FLEXTableViewCell class],
  17. self.subtitleReuseIdentifier: [FLEXSubtitleTableViewCell class],
  18. self.multilineReuseIdentifier: [FLEXMultilineTableViewCell class],
  19. }];
  20. }
  21. return self;
  22. }
  23. - (void)registerCells:(NSDictionary<NSString*,Class> *)registrationMapping
  24. { [registrationMapping enumerateKeysAndObjectsUsingBlock:^(NSString *identifier, Class cellClass, BOOL *stop) {
  25. [self registerClass:cellClass forCellReuseIdentifier:identifier];
  26. }];
  27. }
  28. - (NSString *)defaultReuseIdentifier
  29. { return @"kFLEXTableViewCellIdentifier";
  30. }
  31. - (NSString *)subtitleReuseIdentifier
  32. { return @"kFLEXSubtitleTableViewCellIdentifier";
  33. }
  34. - (NSString *)multilineReuseIdentifier
  35. {
  36. return kFLEXMultilineTableViewCellIdentifier;
  37. }
  38. @end