QMFileTableCell.m 3.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. //
  2. // QMFileTableCell.m
  3. // IMSDK-OC
  4. //
  5. // Created by HCF on 16/8/11.
  6. // Copyright © 2016年 HCF. All rights reserved.
  7. //
  8. #import "QMFileTableCell.h"
  9. #import "QMFileModel.h"
  10. @interface QMFileTableCell () {
  11. UIImageView *_fileImageView;
  12. UILabel *_fileName;
  13. UILabel *_fileSize;
  14. UILabel *_fileDate;
  15. }
  16. @end
  17. @implementation QMFileTableCell
  18. - (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
  19. self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
  20. if (self) {
  21. [self createUI];
  22. }
  23. return self;
  24. }
  25. - (void)createUI {
  26. _fileImageView = [[UIImageView alloc] init];
  27. _fileImageView.frame = CGRectMake(20, 10, 60, 60);
  28. _fileImageView.backgroundColor = [UIColor whiteColor];
  29. [self.contentView addSubview:_fileImageView];
  30. _fileName = [[UILabel alloc] init];
  31. _fileName.frame = CGRectMake(90, 10, kScreenWidth-150, 20);
  32. _fileName.font = [UIFont systemFontOfSize:16];
  33. _fileName.textColor = [UIColor blackColor];
  34. [self.contentView addSubview:_fileName];
  35. _fileSize = [[UILabel alloc] init];
  36. _fileSize.frame = CGRectMake(90, 30, kScreenWidth-150, 20);
  37. _fileSize.font = [UIFont systemFontOfSize:14];
  38. _fileSize.textColor = [UIColor lightGrayColor];
  39. [self.contentView addSubview:_fileSize];
  40. _fileDate = [[UILabel alloc] init];
  41. _fileDate.frame = CGRectMake(90, 50, kScreenWidth-150, 20);
  42. _fileDate.font = [UIFont systemFontOfSize:14];
  43. _fileDate.textColor = [UIColor lightGrayColor];
  44. [self.contentView addSubview:_fileDate];
  45. self.pickedItemImageView = [[UIImageView alloc] init];
  46. self.pickedItemImageView.frame = CGRectMake(kScreenWidth-50, 25, 30, 30);
  47. self.pickedItemImageView.image = [UIImage imageNamed:@"ic_checkbox_pressed"];
  48. [self.contentView addSubview:self.pickedItemImageView];
  49. }
  50. - (void)configureWithModel:(QMFileModel *)model {
  51. _fileName.text = model.fileName;
  52. _fileSize.text = model.fileSize;
  53. _fileDate.text = model.fileDate;
  54. if ([model.fileName.pathExtension.lowercaseString isEqualToString:@"doc"]||[model.fileName.pathExtension.lowercaseString isEqualToString:@"docx"]) {
  55. _fileImageView.image = [UIImage imageNamed:@"custom_file_doc"];
  56. }else if ([model.fileName.pathExtension.lowercaseString isEqualToString:@"xlsx"]||[model.fileName.pathExtension.lowercaseString isEqualToString:@"xls"]) {
  57. _fileImageView.image = [UIImage imageNamed:@"custom_file_xlsx"];
  58. }else if ([model.fileName.pathExtension.lowercaseString isEqualToString:@"ppt"]||[model.fileName.pathExtension.lowercaseString isEqualToString:@"pptx"]) {
  59. _fileImageView.image = [UIImage imageNamed:@"custom_file_pptx"];
  60. }else if ([model.fileName.pathExtension.lowercaseString isEqualToString:@"pdf"]) {
  61. _fileImageView.image = [UIImage imageNamed:@"custom_file_pdf"];
  62. }else if ([model.fileName.pathExtension.lowercaseString isEqualToString:@"mp3"]) {
  63. _fileImageView.image = [UIImage imageNamed:@"custom_file_mp3"];
  64. }else if ([model.fileName.pathExtension.lowercaseString isEqualToString:@"mov"]||[model.fileName.pathExtension.lowercaseString isEqualToString:@"mp4"]) {
  65. _fileImageView.image = [UIImage imageNamed:@"custom_file_mov"];
  66. }else if ([model.fileName.pathExtension.lowercaseString isEqualToString:@"png"]||[model.fileName.pathExtension.lowercaseString isEqualToString:@"jpg"]||[model.fileName.pathExtension.lowercaseString isEqualToString:@"bmp"]||[model.fileName.pathExtension.lowercaseString isEqualToString:@"jpeg"]) {
  67. _fileImageView.image = [UIImage imageNamed:@"custom_file_bmp"];
  68. }else {
  69. _fileImageView.image = [UIImage imageNamed:@"custom_file_other"];
  70. }
  71. }
  72. - (void)awakeFromNib {
  73. [super awakeFromNib];
  74. // Initialization code
  75. }
  76. - (void)setSelected:(BOOL)selected animated:(BOOL)animated {
  77. [super setSelected:selected animated:animated];
  78. // Configure the view for the selected state
  79. }
  80. @end