JCHATRecordAnimationView.m 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. //
  2. // JCHATRecordAnimationView.m
  3. // PALifeInsurance
  4. //
  5. // Created by da zhan on 13-7-27.
  6. // Copyright (c) 2013年 pingan. All rights reserved.
  7. //
  8. #import "JCHATRecordAnimationView.h"
  9. @implementation JCHATRecordAnimationView
  10. - (id)initWithFrame:(CGRect)frame
  11. {
  12. self = [super initWithFrame:frame];
  13. if (self) {
  14. // Initialization code
  15. self.hidden=YES;
  16. self.layer.cornerRadius=3.0;
  17. self.clipsToBounds = YES;
  18. UIImageView *backView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
  19. backView.image = [[UIImage imageNamed:@"chat_voice_bg"] stretchableImageWithLeftCapWidth:10 topCapHeight:10];
  20. [self addSubview:backView];
  21. phoneIV=[[UIImageView alloc]initWithFrame:CGRectMake(13, 10, 72, 99)];
  22. phoneIV.image=[UIImage imageNamed:@"RecordingBkg"];
  23. [self addSubview:phoneIV];
  24. cancelIV = [[UIImageView alloc] initWithFrame:CGRectMake(35, 10, 72, 99)];
  25. cancelIV.image = [UIImage imageNamed:@"voice_delete"];
  26. cancelIV.hidden = YES;
  27. [self addSubview:cancelIV];
  28. signalIV=[[UIImageView alloc]initWithFrame:CGRectMake(96,40, 18, 62)];
  29. signalIV.image=[UIImage imageNamed:@"RecordingSignal001"];
  30. [self addSubview:signalIV];
  31. tipLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 115, 140, 25)];
  32. tipLabel.clipsToBounds = YES;
  33. tipLabel.textColor = [UIColor whiteColor];
  34. tipLabel.textAlignment = NSTextAlignmentCenter;
  35. tipLabel.text = YZMsg(@"上滑取消语音发送");
  36. tipLabel.font = [UIFont boldSystemFontOfSize:16];
  37. tipLabel.backgroundColor = [UIColor colorWithRed:193.0/255 green:98.0/255 blue:60.0/255 alpha:1];
  38. [self addSubview:tipLabel];
  39. }
  40. return self;
  41. }
  42. /*
  43. // Only override drawRect: if you perform custom drawing.
  44. // An empty implementation adversely affects performance during animation.
  45. - (void)drawRect:(CGRect)rect
  46. {
  47. // Drawing code
  48. }
  49. */
  50. //切换录音和取消界面 YES:显示录音 NO:显示取消
  51. - (void)changeRecordView:(BOOL)flag{
  52. if (flag) {
  53. phoneIV.hidden = NO;
  54. cancelIV.hidden = YES;
  55. signalIV.hidden = NO;
  56. tipLabel.text = YZMsg(@"上滑取消语音发送");
  57. } else {
  58. phoneIV.hidden = YES;
  59. cancelIV.hidden = NO;
  60. signalIV.hidden = YES;
  61. tipLabel.text = YZMsg(@"松开取消语音发送");
  62. }
  63. }
  64. - (void)changeanimation:(double)lowPassResults;
  65. {
  66. // int index=arc4random()%8;
  67. //
  68. // signalIV.image=[UIImage imageNamed:[NSString stringWithFormat:@"RecordingSignal00%d",index]];
  69. if (0<lowPassResults<=0.06)
  70. {
  71. [signalIV setImage:[UIImage imageNamed:@"RecordingSignal000.png"]];
  72. }
  73. else if (0.06<lowPassResults<=0.13) {
  74. [signalIV setImage:[UIImage imageNamed:@"RecordingSignal000.png"]];
  75. }
  76. else if (0.13<lowPassResults<=0.20) {
  77. [signalIV setImage:[UIImage imageNamed:@"RecordingSignal001"]];
  78. }
  79. else if (0.20<lowPassResults<=0.27) {
  80. [signalIV setImage:[UIImage imageNamed:@"RecordingSignal001"]];
  81. }
  82. else if (0.27<lowPassResults<=0.34) {
  83. [signalIV setImage:[UIImage imageNamed:@"RecordingSignal002.png"]];
  84. }
  85. else if (0.34<lowPassResults<=0.41) {
  86. [signalIV setImage:[UIImage imageNamed:@"RecordingSignal003.png"]];
  87. }
  88. else if (0.41<lowPassResults<=0.48) {
  89. [signalIV setImage:[UIImage imageNamed:@"RecordingSignal004.png"]];
  90. }
  91. else if (0.48<lowPassResults<=0.55) {
  92. [signalIV setImage:[UIImage imageNamed:@"RecordingSignal005.png"]];
  93. }
  94. else if (0.55<lowPassResults<=0.62) {
  95. [signalIV setImage:[UIImage imageNamed:@"RecordingSignal005.png"]];
  96. }
  97. else if (0.62<lowPassResults<=0.69) {
  98. [signalIV setImage:[UIImage imageNamed:@"RecordingSignal006.png"]];
  99. }
  100. else if (0.69<lowPassResults<=0.76) {
  101. [signalIV setImage:[UIImage imageNamed:@"RecordingSignal007.png"]];
  102. }
  103. else if (0.76<lowPassResults<=0.83) {
  104. [signalIV setImage:[UIImage imageNamed:@"RecordingSignal007.png"]];
  105. }
  106. else if (0.83<lowPassResults<=0.9) {
  107. [signalIV setImage:[UIImage imageNamed:@"RecordingSignal008.png"]];
  108. }
  109. else {
  110. [signalIV setImage:[UIImage imageNamed:@"RecordingSignal000.png"]];
  111. }
  112. }
  113. - (void)change{
  114. }
  115. - (void)startAnimation
  116. {
  117. tipLabel.text = YZMsg(@"上滑取消语音发送");
  118. self.hidden=NO;
  119. phoneIV.hidden = NO;
  120. cancelIV.hidden = YES;
  121. signalIV.hidden = NO;
  122. }
  123. - (void)stopAnimation{
  124. self.hidden=YES;
  125. }
  126. @end