TCMessageManagerFaceView.m 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. //
  2. // TCMessageManagerFaceView.m
  3. // QimoQM
  4. //
  5. // Created by TuChuan on 15/5/13.
  6. // Copyright (c) 2015年 七陌科技. All rights reserved.
  7. //
  8. #import "TCMessageManagerFaceView.h"
  9. #import "TCExpressionSectionBar.h"
  10. #define FaceSectionBarHeight 46 // 表情下面控件
  11. #define FacePageControlHeight 30 // 表情pagecontrol
  12. #define Pages 2
  13. @implementation TCMessageManagerFaceView
  14. {
  15. UIPageControl *pageControl;
  16. }
  17. - (id)initWithFrame:(CGRect)frame
  18. {
  19. self = [super initWithFrame:frame];
  20. if (self) {
  21. [self setup];
  22. }
  23. return self;
  24. }
  25. - (void)setup{
  26. self.backgroundColor = [UIColor whiteColor];
  27. UIScrollView *scrollView = [[UIScrollView alloc]initWithFrame:CGRectMake(0.0f, 5.0f, CGRectGetWidth(self.bounds), CGRectGetHeight(self.bounds) - RQ_APPLICATION_SAFEAREA_BOTTOM_HEIGHT - FacePageControlHeight - FaceSectionBarHeight)];
  28. scrollView.delegate = self;
  29. [self addSubview:scrollView];
  30. [scrollView setPagingEnabled:YES];
  31. [scrollView setShowsHorizontalScrollIndicator:NO];
  32. [scrollView setContentSize:CGSizeMake(CGRectGetWidth(scrollView.frame)*Pages,CGRectGetHeight(scrollView.frame))];
  33. for (int i= 0;i<Pages;i++) {
  34. TCFaceView *faceView = [[TCFaceView alloc]initWithFrame:CGRectMake(i*CGRectGetWidth(self.bounds),0.0f,CGRectGetWidth(self.bounds),CGRectGetHeight(scrollView.bounds)) forIndexPath:i];
  35. [scrollView addSubview:faceView];
  36. faceView.delegate = self;
  37. }
  38. pageControl = [[UIPageControl alloc]init];
  39. [pageControl setFrame:CGRectMake(0,CGRectGetMaxY(scrollView.frame),CGRectGetWidth(self.bounds),FacePageControlHeight)];
  40. [self addSubview:pageControl];
  41. [pageControl setPageIndicatorTintColor:[UIColor lightGrayColor]];
  42. [pageControl setCurrentPageIndicatorTintColor:[UIColor grayColor]];
  43. pageControl.numberOfPages = Pages;
  44. pageControl.currentPage = 0;
  45. self.sendButton = [UIButton buttonWithType:UIButtonTypeCustom];
  46. self.sendButton.frame = CGRectMake(self.bounds.size.width-70, self.bounds.size.height - RQ_APPLICATION_SAFEAREA_BOTTOM_HEIGHT - 30, 50, 30);
  47. self.sendButton.backgroundColor = RQ_MAIN_COLOR;
  48. self.sendButton.layer.cornerRadius = 15.f;
  49. self.sendButton.clipsToBounds = YES;
  50. [self.sendButton setTitle:NSLocalizedString(@"button.send", nil) forState:UIControlStateNormal];
  51. [self addSubview:self.sendButton];
  52. }
  53. #pragma mark scrollView Delegate
  54. -(void)scrollViewDidScroll:(UIScrollView *)scrollView
  55. {
  56. int page = scrollView.contentOffset.x/320;
  57. pageControl.currentPage = page;
  58. }
  59. #pragma mark ZBFaceView Delegate
  60. - (void)didSelecteFace:(NSString *)faceName andIsSelecteDelete:(BOOL)del{
  61. if ([self.delegate respondsToSelector:@selector(SendTheFaceStr:isDelete:) ]) {
  62. [self.delegate SendTheFaceStr:faceName isDelete:del];
  63. }
  64. }
  65. @end