Sobes.tech
Junior

Mi a különbség a frame és a bounds között az iOS-ben?

sobes.tech MI

Válasz az MI-től

iOS-en a UIView két fontos tulajdonsága van a koordinátákkal való munkához: a frame és a bounds.

  • A frame egy téglalap, amely leírja a pozíciót és a méretet a superview (szülő nézet) koordináta rendszerében. Másképp fogalmazva, a frame.origin a szülő térbeli koordinátáit mutatja.

  • A bounds egy téglalap, amely a nézet belső koordinátáit írja le. Általában a bounds.origin (0,0), és a méret megegyezik a frame.size-szel. A bounds határozza meg, hogy a nézet tartalma hogyan helyezkedik el belül.

Példa: Ha egy UIView frame-je origin (50, 100) és mérete (200, 100), akkor a szülőhöz képest az X-tengelyen 50, az Y-tengelyen pedig 100 helyen van. A bounds általában origin (0,0) és méret (200,100), azaz a nézet belső koordinátái.

Így:

  • frame — pozíció és méret a szülőhöz képest.
  • bounds — koordináták és méret a nézeten belül.