我的app启动页面是用的图片,如下图。
但是每次启动的时候,启动图片结束后会黑屏1秒左右才进入主页面,这是为什么呢?
而且奇怪的是,并不是次次都黑屏,有时候又不黑屏。
ringa_lee2017-04-18 09:15:32
이유를 찾았습니다. 로드된 홈 페이지를 초기화할 때 동기적으로 수행되는 데이터 읽기 작업이 있는데, 이로 인해 UI 스레드가 차단되고 UI가 잠시 검은색 화면으로 전환됩니다. 비동기로 변경하면 됩니다.
PHP中文网2017-04-18 09:15:32
시간이 너무 오래 걸린 것 같아요.
appDelegate의 didFinishLaunchingWithOptions
첫 번째 줄에 있는 타임스탬프와 홈페이지의 viewDidAppear에 있는 타임스탬프를 인쇄하여 둘 사이의 차이가 너무 긴지 확인할 수 있습니다. 데이터베이스 읽기 및 쓰기, 대용량 파일 로드 등과 같이 메인 스레드에 시간이 많이 걸리는 작업이 있습니까?
PHP中文网2017-04-18 09:15:32
가끔 발생하는 버그는 처리하기가 더 어렵습니다. 첫 번째 인터페이스의 ViewController가 ViewAppear 전에 메인 스레드를 차단하는 작업을 수행했나요?
그렇지 않은 경우 먼저 LaunchScreen을 StoryBoard 파일에 할당한 다음 LaunchScreen을 채워보세요. 사진과 함께
伊谢尔伦2017-04-18 09:15:32
검은색 화면은 rootVC 인터페이스가 표시되지 않거나 검은색이거나 비어 있음을 의미합니다. rootVC 뷰를 빨간색 등 눈길을 끄는 색상으로 설정하고 상황을 확인하는 것이 좋습니다
PHP中文网2017-04-18 09:15:32
self.window = [[UIWindow 할당] initWithFrame:[UIScreen mainScreen].bounds];
self.window.BackgroundColor = [UIColor whiteColor];
self.window.rootViewController = XXX;
[self.window makeKeyAndVisible];