Skip to content

Commit 740673f

Browse files
committed
Fix page control padding on iPhone X
1 parent 8f9c573 commit 740673f

File tree

2 files changed

+14
-4
lines changed

2 files changed

+14
-4
lines changed

Source/OnboardingContentViewController.m

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -265,7 +265,12 @@ - (void)viewWillLayoutSubviews {
265265
if (self.videoURL) {
266266
self.moviePlayerController.view.frame = self.view.frame;
267267
}
268-
268+
269+
CGFloat safedUnderPageControlPadding = self.underPageControlPadding;
270+
if (@available(iOS 11.0, *)) {
271+
safedUnderPageControlPadding += [self.view safeAreaInsets].bottom;
272+
}
273+
269274
CGFloat viewWidth = CGRectGetWidth(self.view.frame);
270275
CGFloat contentWidth = viewWidth * kContentWidthMultiplier;
271276
CGFloat xPadding = (viewWidth - contentWidth) / 2.0;
@@ -284,7 +289,7 @@ - (void)viewWillLayoutSubviews {
284289
[self.bodyLabel sizeToFit];
285290
self.bodyLabel.frame = CGRectMake(xPadding, bodyYOrigin, contentWidth, CGRectGetHeight(self.bodyLabel.frame));
286291

287-
self.actionButton.frame = CGRectMake((CGRectGetMaxX(self.view.frame) / 2) - (contentWidth / 2), CGRectGetMaxY(self.view.frame) - self.underPageControlPadding - kMainPageControlHeight - kActionButtonHeight - self.bottomPadding, contentWidth, kActionButtonHeight);
292+
self.actionButton.frame = CGRectMake((CGRectGetMaxX(self.view.frame) / 2) - (contentWidth / 2), CGRectGetMaxY(self.view.frame) - safedUnderPageControlPadding - kMainPageControlHeight - kActionButtonHeight - self.bottomPadding, contentWidth, kActionButtonHeight);
288293
}
289294

290295

Source/OnboardingViewController.m

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -145,10 +145,15 @@ - (void)viewWillDisappear:(BOOL)animated {
145145
- (void)viewWillLayoutSubviews {
146146
[super viewWillLayoutSubviews];
147147

148+
CGFloat safedUnderPageControlPadding = self.underPageControlPadding;
149+
if (@available(iOS 11.0, *)) {
150+
safedUnderPageControlPadding += [self.view safeAreaInsets].bottom;
151+
}
152+
148153
self.pageVC.view.frame = self.view.frame;
149154
self.moviePlayerController.view.frame = self.view.frame;
150-
self.skipButton.frame = CGRectMake(CGRectGetMaxX(self.view.frame) - kSkipButtonWidth, CGRectGetMaxY(self.view.frame) - self.underPageControlPadding - kSkipButtonHeight, kSkipButtonWidth, kSkipButtonHeight);
151-
self.pageControl.frame = CGRectMake(0, CGRectGetMaxY(self.view.frame) - self.underPageControlPadding - kPageControlHeight, self.view.frame.size.width, kPageControlHeight);
155+
self.skipButton.frame = CGRectMake(CGRectGetMaxX(self.view.frame) - kSkipButtonWidth, CGRectGetMaxY(self.view.frame) - safedUnderPageControlPadding - kSkipButtonHeight, kSkipButtonWidth, kSkipButtonHeight);
156+
self.pageControl.frame = CGRectMake(0, CGRectGetMaxY(self.view.frame) - safedUnderPageControlPadding - kPageControlHeight, self.view.frame.size.width, kPageControlHeight);
152157
}
153158

154159
- (void)generateView {

0 commit comments

Comments
 (0)