CCIntro.m 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. //
  2. // CCIntro.m
  3. // Crypto Cloud Technology Nextcloud
  4. //
  5. // Created by Marino Faggiana on 05/11/15.
  6. // Copyright (c) 2017 TWS. All rights reserved.
  7. //
  8. // Author Marino Faggiana <m.faggiana@twsweb.it>
  9. //
  10. // This program is free software: you can redistribute it and/or modify
  11. // it under the terms of the GNU General Public License as published by
  12. // the Free Software Foundation, either version 3 of the License, or
  13. // (at your option) any later version.
  14. //
  15. // This program is distributed in the hope that it will be useful,
  16. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  17. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  18. // GNU General Public License for more details.
  19. //
  20. // You should have received a copy of the GNU General Public License
  21. // along with this program. If not, see <http://www.gnu.org/licenses/>.
  22. //
  23. #import "CCIntro.h"
  24. @interface CCIntro ()
  25. {
  26. int titlePositionY;
  27. int descPositionY;
  28. int titleIconPositionY;
  29. }
  30. @end
  31. @implementation CCIntro
  32. - (id)initWithDelegate:(id <CCIntroDelegate>)delegate delegateView:(UIView *)delegateView
  33. {
  34. self = [super init];
  35. if (self) {
  36. self.delegate = delegate;
  37. self.rootView = delegateView;
  38. }
  39. return self;
  40. }
  41. - (void)introWillFinish:(EAIntroView *)introView wasSkipped:(BOOL)wasSkipped
  42. {
  43. [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
  44. if (self.delegate && [self.delegate respondsToSelector:@selector(introWillFinish:wasSkipped:)])
  45. [self.delegate introWillFinish:introView wasSkipped:wasSkipped];
  46. }
  47. - (void)introDidFinish:(EAIntroView *)introView wasSkipped:(BOOL)wasSkipped
  48. {
  49. if (self.delegate && [self.delegate respondsToSelector:@selector(introDidFinish:wasSkipped:)])
  50. [self.delegate introDidFinish:introView wasSkipped:wasSkipped];
  51. }
  52. - (void)showIntroCryptoCloud:(CGFloat)duration
  53. {
  54. CGFloat height = self.rootView.bounds.size.height;
  55. if (height <= 480) { titleIconPositionY = 20; titlePositionY = 260; descPositionY = 230; }
  56. if (height >= 500 && height <= 800) { titleIconPositionY = 50; titlePositionY = height / 2; descPositionY = height / 2 - 40 ; }
  57. if (height >= 1024) { titleIconPositionY = 100; titlePositionY = 290; descPositionY = 250; }
  58. EAIntroPage *page1 = [EAIntroPage page];
  59. page1.title = NSLocalizedStringFromTable(@"_intro_1_title_", @"Intro", nil);
  60. page1.titlePositionY = titlePositionY;
  61. page1.titleColor = [UIColor blackColor];
  62. page1.titleFont = [UIFont systemFontOfSize:20];
  63. page1.desc = NSLocalizedStringFromTable(@"_intro_1_text_", @"Intro", nil);
  64. page1.descPositionY = descPositionY;
  65. page1.descColor = [UIColor blackColor];
  66. page1.descFont = [UIFont systemFontOfSize:14];
  67. page1.titleIconView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"intro1"]];
  68. page1.bgImage = [UIImage imageNamed:@"bgbianco"];
  69. page1.titleIconPositionY = titleIconPositionY;
  70. page1.showTitleView = NO;
  71. EAIntroPage *page2 = [EAIntroPage page];
  72. page2.title = NSLocalizedStringFromTable(@"_intro_2_title_", @"Intro", nil);
  73. page2.titlePositionY = titlePositionY;
  74. page2.titleColor = [UIColor blackColor];
  75. page2.titleFont = [UIFont systemFontOfSize:20];
  76. page2.desc = NSLocalizedStringFromTable(@"_intro_2_text_", @"Intro", nil);
  77. page2.descPositionY = descPositionY;
  78. page2.descColor = [UIColor blackColor];
  79. page2.descFont = [UIFont systemFontOfSize:14];
  80. page2.titleIconView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"intro2"]];
  81. page2.bgImage = [UIImage imageNamed:@"bgbianco"];
  82. page2.titleIconPositionY = titleIconPositionY;
  83. page2.showTitleView = NO;
  84. EAIntroPage *page3 = [EAIntroPage page];
  85. page3.title = NSLocalizedStringFromTable(@"_intro_3_title_", @"Intro", nil);
  86. page3.titlePositionY = titlePositionY;
  87. page3.titleColor = [UIColor blackColor];
  88. page3.titleFont = [UIFont systemFontOfSize:20];
  89. page3.desc = NSLocalizedStringFromTable(@"_intro_3_text_", @"Intro", nil);
  90. page3.descPositionY = descPositionY;
  91. page3.descColor = [UIColor blackColor];
  92. page3.descFont = [UIFont systemFontOfSize:14];
  93. page3.titleIconView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"intro3"]];
  94. page3.bgImage = [UIImage imageNamed:@"bgbianco"];
  95. page3.titleIconPositionY = titleIconPositionY;
  96. page3.showTitleView = NO;
  97. EAIntroView *intro = [[EAIntroView alloc] initWithFrame:self.rootView.bounds andPages:@[page1, page2, page3]];
  98. //intro.backgroundColor = [UIColor whiteColor];
  99. intro.tapToNext = YES;
  100. intro.pageControl.pageIndicatorTintColor = [UIColor lightGrayColor];
  101. intro.pageControl.currentPageIndicatorTintColor = [UIColor blackColor];
  102. intro.pageControl.backgroundColor = [UIColor clearColor];
  103. [intro.skipButton setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
  104. [intro setDelegate:self];
  105. [intro showInView:self.rootView animateDuration:duration];
  106. [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault];
  107. }
  108. @end