Szukam sposobu, aby dodać właściwość padding
do UIView. Idealnie, chciałbym uniknąć subclassing i umieszczenie go w kategorii. Wykorzystanie byłoby coś jak:Dodawanie padding do UIView
myview.padding = UIEdgeInsetsMake(10, 10, 10, 10);
i może mieć właściwość paddingBox
także co zwrócić CGRect
opisujący rozmiar i położenie okna wyściółki wewnętrznej.
Teraz, jak można zaimplementować w kategorii coś takiego. Początkowo jednak używałem bounds
, ale niestety rozmiar bounds
jest powiązany z rozmiarem frame
(zawsze taki sam) tylko współrzędne mogą się różnić.
Zmienia to również rozmiar widoku, niestety. Jak wspomniałem w moim pytaniu, dokumenty stwierdzają, że "Rozmiar prostokąta obwiedni jest sprzężony z rozmiarem prostokąta ramki, tak że zmiany jednego wpływają na drugi". Innymi słowy, napisany kod powinien mieć -10 nie 10, a nawet tak, doda tylko górny i lewy margines, ale będę testować ponownie, aby upewnić się, że czegoś nie brakuje. – Meda
Czy masz link do dokumentów, ponieważ jestem pewien, że rozmiar granic i ramka mogą się różnić? –
http://stackoverflow.com/questions/749558/why-is-there-an-frame-rectangle-and-an-bounds-rectangle-in-an-uiview i http://stackoverflow.com/questions/1071112/uiviews-frame-bound-center-origin-when-to-use-co to jest dobra informacja na ten temat. –