CWLateralSlideConfiguration.m 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. //
  2. // CWLateralSlideConfiguration.m
  3. // ViewControllerTransition
  4. //
  5. // Created by chavez on 2017/6/29.
  6. // Copyright © 2017年 chavez. All rights reserved.
  7. //
  8. #import "CWLateralSlideConfiguration.h"
  9. @implementation CWLateralSlideConfiguration
  10. + (instancetype)defaultConfiguration {
  11. return [CWLateralSlideConfiguration configurationWithDistance:kCWSCREENWIDTH * 0.5 maskAlpha:0.4 scaleY:1.0 direction:CWDrawerTransitionFromLeft backImage:nil];
  12. }
  13. - (instancetype)initWithDistance:(float)distance maskAlpha:(float)alpha scaleY:(float)scaleY direction:(CWDrawerTransitionDirection)direction backImage:(UIImage *)backImage {
  14. if (self = [super init]) {
  15. _distance = distance;
  16. _maskAlpha = alpha;
  17. _direction = direction;
  18. _backImage = backImage;
  19. _scaleY = scaleY;
  20. _finishPercent = 0.4;
  21. _showAnimDuration = 0.25;
  22. _HiddenAnimDuration = 0.25;
  23. }
  24. return self;
  25. }
  26. + (instancetype)configurationWithDistance:(float)distance maskAlpha:(float)alpha scaleY:(float)scaleY direction:(CWDrawerTransitionDirection)direction backImage:(UIImage *)backImage {
  27. return [[self alloc] initWithDistance:distance maskAlpha:alpha scaleY:scaleY direction:direction backImage:backImage];
  28. }
  29. - (float)distance {
  30. if (_distance <= 0)
  31. return kCWSCREENWIDTH * 0.75;
  32. return _distance;
  33. }
  34. - (float)maskAlpha {
  35. if (_maskAlpha <= 0)
  36. return 0.4;
  37. return _maskAlpha;
  38. }
  39. - (float)scaleY {
  40. if (_scaleY <= 0)
  41. return 1.0;
  42. return _scaleY;
  43. }
  44. - (float)finishPercent {
  45. if (_finishPercent <= 0)
  46. return 0.4;
  47. return _finishPercent;
  48. }
  49. - (NSTimeInterval)showAnimDuration {
  50. if (_showAnimDuration <= 0)
  51. return 0.25;
  52. return _showAnimDuration;
  53. }
  54. - (NSTimeInterval)HiddenAnimDuration {
  55. if (_HiddenAnimDuration <= 0)
  56. return 0.25;
  57. return _HiddenAnimDuration;
  58. }
  59. - (void)dealloc {
  60. // NSLog(@"%s",__func__);
  61. }
  62. @end