아이 폰 X 의 간단 한 어 울 리 는 문제(추천)

3943 단어 iphoneX어울리다
지난주 에 애플 은 새로운 설 비 를 크게 발 표 했 는데 그 중에서 가장 눈 에 띄 는 것 은 아이 폰 X 이다.이 설비 에 대해 공식 적 으로 상세 한 설명 을 했다공식 문서최신 AR,인공지능 등 기능 을 제외 하고 우 리 는 이것 도 새로운 사이즈 의 설비 라 는 것 을 발견 했다.
공식 문 서 는 이 설비 에 홈 키 가 없다 고 지적 했다.물론 홈 키 의 기능 을 대체 하 는 제스처 조작 도 있 고 이 설비 도 기본 적 인 전면 스크린 설비 이다.물론 이 장비 의'앞머리'에 대해 많은 이 야 기 를 들 었 습 니 다.하지만 저 는 앞머리 에 추 가 된 기능 에 비해 이 앞머리 도 우아 함 에 해 를 끼 치지 않 는 다 고 생각 합 니 다.미관 보 다 는 저 같은 실무 자 에 게 기능 을 더 중시 하고 잡담 을 많이 하지 않 습 니 다.우 리 는 애플 에서 설 비 를 발표 하 는 첫 번 째 시간 에 우리 의 공사 에 간단 한 어 울 렸 습 니 다.오늘 시간 이 있 습 니 다.여기 서 적합 한 과정 과 작은 문 제 를 말 해 보 세 요.

우 리 는 공식 적 인 사이즈 설명 을 살 펴 보고 이 장 치 는@3x 의 해상 도 를 지원 할 수 있 음 을 발견 한 다음 에 공식 적 으로 적합 한 설명 을 볼 수 있 습 니 다.
Most apps that use standard, system-provided UI elements like navigation bars, tables, and collections automatically adapt to the device's new form factor. Background materials extend to the edges of the display and UI elements are appropriately inset and positioned.
일반적으로 기 존의 UI,네 비게 이 션 등 보기 가 스스로 어 울 릴 수 있다 는 뜻 이지 만 우 리 는 첫 번 째 시간 에 Xcode 9 로 우리 의 프로젝트 를 테스트 했다.그림 과 같다.

전체 화면 이 가득 차 있 지 않 습 니 다.간단 하고 빠 른 어댑터 에 해당 하 는 시작 그림 을 추가 해 야 합 니 다.

시작 그림 의 크기 는 375 x812@3x 입 니 다.
추가 후

이 때 는 화면 전 체 를 완벽 하 게 채 울 수 있 지만 작은 문제 가 있 습 니 다.특히 순 코드 를 사용 하 는 프로젝트 에서 특히 즐겨 사용 합 니 다.

#define SCREENWIDTH [UIScreen mainScreen].bounds.size.width
#define SCREENHIGHT [UIScreen mainScreen].bounds.size.height
이 두 개의 매크로 정 의 는 화면의 너비 와 높이 를 가 져 옵 니 다.문제 가 발생 하기 쉬 운 곳 은 아래쪽 에서 보 는 경우 입 니 다.원래 의 모든 기종 상태+네 비게 이 션 은 64 입 니 다.여기 가 갑자기 더 커 졌 습 니 다.원래 의 위 치 를 계산 하 던 frame 은 현재 원래 의 위치 에 없 을 수도 있 습 니 다.
상태+네 비게 이 션 으로 인해 우 리 는 두 개의 서로 다른 사 이 즈 를 가지 게 되 었 기 때문에 아래 코드 를 사용 하여 동적 으로 얻 을 수 있 습 니 다.

CGRect rectStatus = [[UIApplication sharedApplication] statusBarFrame];
NSLog(@"status width - %f", rectStatus.size.width); //   
NSLog(@"status height - %f", rectStatus.size.height); //   


//    (navigationbar)
CGRect rectNav = self.navigationController.navigationBar.frame;
NSLog(@"nav width - %f", rectNav.size.width); //   
NSLog(@"nav height - %f", rectNav.size.height); //  
이렇게 하면 frame 을 정확하게 얻 을 수 있 습 니 다.특히 보기 가 아래쪽 에 있 도록 잘 어 울 리 는 네 비게 이 션 그림 을 한 장 더 얻 을 수 있 습 니 다.

이로써 간단하게 완성!
iOS 11 과 아이 폰 X 에 적합 한 문제
문제 1 app 상하 가 검은색 영역 이지 전체 화면(iPhone X)이 아 닙 니 다.
새로운 LaunchImage 를 추가 해 야 할 수도 있 습 니 다.
LaunchImage 의 Contents.json 파일 을 편집 하고 다음 코드 를 추가 합 니 다.
파일 이름 바 꾸 기

{
    "extent" : "full-screen",
    "idiom" : "iphone",
    "subtype" : "2436h",
    "filename" : "iPhoneX.png",
    "minimum-system-version" : "11.0",
    "orientation" : "portrait",
    "scale" : "3x"
   },
   {
    "extent" : "full-screen",
    "idiom" : "iphone",
    "subtype" : "2436h",
    "filename" : "iPhoneX.png",
    "minimum-system-version" : "11.0",
    "orientation" : "landscape",
    "scale" : "3x"
   },
질문 2 tabbar 또는 navigation Bar 이상(iPhone X)
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기