Tôi thừa kế một dự án quá phức tạp (vì vậy tôi không biết tất cả các hoạt động bên trong) và tôi đang gặp lỗi. Một số phần nhất định trong ứng dụng của tôi có một số hoạt ảnh dài được thực hiện với Giao dịch chuyển hướng và dường như điều này khiến cho layoutSubviews được gọi nhiều lần trong khi hoạt ảnh đang hoạt động. Điều này không xảy ra trên ios5 và mọi thứ đều chính xác, nhưng trên ios6 nó được gọi là nonstop và can thiệp với nhiều bố cục của khung nhìn. Tất cả dấu vết ngăn xếp đều bị ẩn/chuyển sang màu xám, nhưng dường như bắt đầu bằng CA::Transaction::commit()
layoutSubviews được gọi lặp đi lặp lại trên ios6 sau khi giao dịch
Có bất kỳ điều gì với thay đổi Giao dịch giữa các phiên bản ios để gây ra điều gì đó như thế này không?
bạn đang tạo hoạt ảnh uiview với tự động hóaSubviews được đặt thành true? – mxb
Có sử dụng tự động trả lời không? Điều đó đã được giới thiệu trong ios6. Nếu bạn làm một số điều mà gọi bố trí, hoặc làm những việc ở vị trí sai, bạn sẽ nhận được một vòng lặp hoặc có được cơ bản cách tiếp cận thường xuyên hơn cần thiết. Trước tiên, bạn muốn tìm kiếm các setNeedsLayout giả hoặc các cuộc gọi bố trí. – uchuugaka
Bạn đã kiểm tra câu hỏi này chưa? http://stackoverflow.com/questions/728372/when-is-layoutsubviews-called – arturdev