Има ли разлики между свойствата Frame и Bounds на графичен елемент?
sobes.tech AI
Отговор от AI
В iOS графичните елементи (UIView) имат свойства frame и bounds, които описват различни неща:
-
frame — това е правоъгълник, който описва позицията и размера на елемента в координатите на неговия супервю (родителски изглед). Тоест,
frame.originе разположението спрямо родителя. -
bounds — това е правоъгълник, който описва вътрешните координати на самия елемент. Обикновено,
bounds.originе (0,0), а размерът съвпада с размера на елемента.
Пример:
Ако премествате елемента, се променя неговият frame.origin. Ако промените bounds, например, като преместите неговия origin, съдържанието на елемента ще се премести вътре в него, но самият елемент ще остане на мястото си.
По този начин, frame отговаря за позицията и размера в системата от координати на родителя, а bounds — за вътрешната система от координати на самия елемент.