Może dążenie do projektu "bez ostrzeżenia" jest daremne, ale jestem wystarczająco zdenerwowany Adaptive Layout/AutoLayout, że jestem zmuszony spróbować zgnieść te ostrzeżenia.Ramka "będzie inna w czasie wykonywania" ... Czy to nie wszystko?
Mam widok, który chcę dynamicznie zmieniać na podstawie szerokości ekranu portretu. Mam zestaw aplikacji w informacjach o kompilacji dla Universal, tylko dla portretu (i do góry nogami). Mam ograniczone UIView z następujących sposobów:
- wyrównany Centrum widoku do centrum Superview za X
- dokonał widok na szerokość proporcjonalna do Superview na szerokość
- dała wyświetlić ograniczenie współczynnika proporcji 1: 1
- Biorąc widoku pionowego ograniczenie do superview Top
Po szczegóły patrz zrzut ekranu poniżej.
Teraz otrzymuję ostrzeżenia o tym, że "ramka jest inna w czasie wykonywania", w szczególności rozmiar i położenie w czasie wykonywania w porównaniu do tego, co znajduje się w obszarze roboczym. Nie wiem, dlaczego Xcode "troszczy się" o płótno, w którym rozmiary klas są ustawione na Dowolna wysokość i Dowolna szerokość. Sądziłem, że cały aspekt układu Adaptive polega na tym, że rozmiary i pozycje są rozwiązywane w środowisku wykonawczym na podstawie rozmiaru i orientacji ekranu urządzenia.
Jeśli się załamuję i pozwolę Xcode "Aktualizować ramki" ... tak ostrzeżenie zniknie, ale przy super dużych widokach praktycznie niemożliwe jest graficzne przetwarzanie na maleńkim płótnie w stylu WYSIWIG. Jakieś rozwiązanie tutaj, aby pozbyć się ostrzeżeń bez tworzenia zbyt dużych widoków, które sprawiają, że praca wewnątrz płótna jest prawie niemożliwa?
Przepraszam, może nie było jasne. W moim pytaniu już zauważyłem, że mogę pozwolić Xcode naprawić rzeczy z "Update Frames". Moje pytanie dotyczyło w zasadzie wykorzystania ograniczonej nieruchomości Canvas po tym, jak "zaktualizowano ramki". Zdaję sobie sprawę, że było trochę jęków i jęków poprzedzających moje pytanie :) –