其中一个ViewController执行以下语句
UIViewController *vc = [[UIViewController alloc] init];
[self.navigationController pushViewController:vc animated:false];
将要被push的ViewController的viewDidLoad方法中,我init了一个textview和一个button,并且addSubview了,然后我在viewWillAppear方法中设置了他们的一点属性,用Masonry做了布局。
然后在第一次push的时候会产生卡顿,请问有什么方法避免?
먼저 지연이 발생하는 위치를 삭제하고 Time Profiler를 사용하여 살펴보아야 합니다
또는 코드를 게시할 수 있습니다
점프하는 컨트롤러에서 배경색을 설정하셨나요?
로드해야 할 것이 너무 많습니다. 코드 로직이 정체되는 이유에 주의를 기울여 문제를 찾아내고 목표에 맞게 최적화해야 합니다.
점프된 컨트롤러 보기에 흰색 배경을 설정할 수 있습니다
건너뛴 뷰컨트롤러의 뷰 배경색은 클리어컬러일 수 없습니다
클래스 인스턴스를 초기화하는 방법은 무엇입니까? 점프하려는 클래스의 이름이 UIViewController.h가 아닌가요?
다음 페이지의 배경색 문제일 수도 있습니다. 투명도를 설정할 수 있나요?
글을 너무 많이 쓰면 막힐까요? backgroundColor 문제일 수도 있으니 코드를 입력하고 살펴보는 것이 가장 좋습니다
푸시 컨트롤러의 배경색을 설정하는 것이 가장 좋습니다. 그렇지 않으면 렌더링 지연이 발생합니다
Do it in view가 나타났습니다. 뷰가 나타나고 전환 애니메이션은 모두 동일한 runloop 반복에 있으며 자동 레이아웃 자체는 성능 집약적입니다. 동일한 runloop 반복에 레이아웃과 애니메이션을 모두 넣으면 해당 반복에 대한 부담이 늘어납니다.