적어도 Xcode에서 Use Safe Area Layout Guides
을 트리거하면 "Safe area layout guide before ios 9".
오류가 발생합니다. 이는 두 장치를 모두 지원할 수 없다는 의미입니까? 어떤 충고? 감사.동일한 프로젝트에서 iPhone X 및 iOS 8을 지원할 수 있습니까?
6
A
답변
3
아이폰 OS (8)의 최소 목표 아이폰 X를 지원하는 완전 수는 (사실, 그것은 우리가 현재 칸 아카데미 응용 프로그램이 무엇인지입니다.)
는 우리가 할 것은 우리 스위프트의 safeAreaInsets
을 적용하다 그래서처럼 #available
기능을 사용하여 코드 : 당신이 안전 영역 세트를 가능하게하는 스토리 보드에서 체크 박스를 사용할지 여부를 논쟁하는 것처럼 질문에서
public override func safeAreaInsetsDidChange() {
if #available(iOS 11.0, *) {
super.safeAreaInsetsDidChange()
self.contentCatalogHeaderView?.safeAreaInsetsTopOverride = safeAreaInsets.top
self.collectionViewLayout.safeAreaInsetsTop = safeAreaInsets.top
}
}
, 그것은 소리. 스토리 보드가 iOS 8을 지원할 수 있는지 여부는 확신 할 수 없습니다. 안전 영역 인세 트가 활성화 된 경우 (가능하지 않을 수도 있습니다). 그러나 언제든지 레이아웃 제약 조건에 대한 참조를 저장할 수 있으며 위의 #available
함수를 사용하여 코드에서 상수를 업데이트 할 수 있습니다.
이 (목표 - C에서 코드가 거의 동일 보이는, 그냥이 같은 포맷 :
- (void)viewSafeAreaInsetsDidChange {
if (@available(iOS 11.0, *)) {
[super viewSafeAreaInsetsDidChange];
[self.view setNeedsLayout];
}
}
를 내가 대답은 더는 내가 수표를 가기로 결정 때까지 고생입니다 수행 한 모든 테스트에서. 얼마나 많은 사용자가 내 앱으로 iOS 8을 사용했는지, 아무도 없었습니다. – MwcsMac