IOS 화면 어댑터 가 window 의 예제 코드 크기 를 조정 합 니 다.

배경:
회사 에 아이 패드 프로젝트(가로 화면 만 지원)가 있 는데 11 년 에 개 발 된 것 입 니 다.그때 아이 패드 는 1024 x768 의 해상도 만 있 었 기 때문에 화면 에 맞 는 문제 가 없 었 습 니 다.frame 은 모두 죽 었 습 니 다.이후 서로 다른 사이즈 의 아이 패드 가 잇따라 등장 하면 서 화면 이 어 울 리 지 않 는 문제 가 생 길 수 있 었 지만,이 항목 은 시작 그림 이 설정 되 어 있 지 않 아 화면 이 자동 으로 크기 조정 되 어 전체 화면 을 채 울 수 있 었 고,각 해상도 의 너비 와 높이 의 차이 가 많 지 않 아 큰 문제 가 없 었 다.그러나 2020 년 3 월 4 일 애플 은 App Store app Xcode storyboard( ) app 기 존의 시동 도 를 설치 하지 않 고 교묘 하 게 하 는 방식 은 사용 할 수 없다 고 요구 했다.
가장 이상 적 인 어댑터 방안 은 당연히 AutoLayout 이지 만 AutoLayout 로 바 꾸 는 것 이 너무 커서 현재 어댑터 주기 가 짧 기 때문에 이런 방안 은 도태 되 었 다.그리고 AutoResizing 을 사용 하 는 것 을 고려 하여 변경 이 많이 줄 었 지만 프로젝트 가 많 고 페이지 가 많 기 때문에 변경 시간 이 좀 길다.
마지막 으로 시동 도 를 설치 하지 않 으 면 정상적으로 어 울 리 는 원 리 를 고려 했다.Window 크기 를 조정 하 는 방안 을 고려 합 니 다.
확대/축소 방안
1.윈도우 크기 조정

  self.window = [[UIWindow alloc] initWithFrame:CGRectMake(0, 0, 1024, 768)];
  CGFloat scaleX = [UIScreen mainScreen].bounds.size.width / 1024;
  CGFloat scaleY = [UIScreen mainScreen].bounds.size.height / 768;
  self.window.transform = CGAffineTransformMakeScale(scaleX, scaleY);
  CGRect rect = self.window.frame;
  self.window.frame = CGRectMake(0, 0, rect.size.width, rect.size.height);
2.화면 크기 의 해상 도 는 스스로 죽 어야 합 니 다.screen 의 bounds 를 사용 할 수 없습니다.

#define SCREEN_WIDTH [UIScreen mainScreen].bounds.size.width 
   #define SCREEN_WIDTH 1024
#define SCREEN_HEIGHT [UIScreen mainScreen].bounds.size.height 
   #define SCREEN_HEIGHT 768
3.window 에 보 기 를 추가 합 니 다.window.center 를 사용 하여 보 기 를 가운데 로 하지 마 십시오.window.frame.origin 은 이미(0,0)이 아니 기 때문이다.

alertView.center = CGRectMake(1024 * 0.5, 768 * 0.5)
이 방안 의 결점
1.window 등의 비율 을 크기 조정 하면 아이 패드 프로 는 11 인치 상하 에 약간의 검 은 테두리 가 있 을 수 있 습 니 다.
2.윈도 우 를 전체 화면 에 넓 게 확대 하면 아이 패드 프로 11 인치 가 약간 변형 되 어 뚜렷 하지 않 습 니 다.
3.약간 모호 하고 뚜렷 하지 않 음
4.어느 날 새로운 아이 패드 의 너비 와 높이 가 예전 의 아이 패드 와 차이 가 크 면 크기 조정 방안 은 적용 되 지 않 습 니 다.
IOS 스크린 어 울 리 기 방안 의 크기 조정 window 구현 에 관 한 예제 코드 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 IOS 크기 조정 window 내용 은 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 도 많은 응원 부 탁 드 리 겠 습 니 다!

좋은 웹페이지 즐겨찾기