Sobes.tech
Junior — Middle

Կա՞ն տարբերություններ գրաֆիկական տարրի Frame և Bounds հատկությունների միջև։

sobes.tech AI

Պատասխան AI-ից

iOS-ում գրաֆիկական տարրերը (UIView) ունեն frame և bounds հատկությունները, որոնք նկարագրում են տարբեր բաներ՝

  • frame — դա ուղղանկյուն է, որը նկարագրում է տարրի դիրքը և չափը նրա սուպերվյու (հայրենական տեսքի) կոորդինատների համակարգում։ Այլ կերպ ասած, frame.origin-ը դիրքն է հարաբերականորեն ծնողի նկատմամբ։

  • bounds — դա ուղղանկյուն է, որը նկարագրում է տարրի ներքին կոորդինատները։ Սովորաբար, bounds.origin-ը (0,0) է, և չափը համապատասխանում է տարրի չափին։

Օրինակ՝

Եթե դուք տեղափոխում եք տարրն, փոխվում է նրա frame.origin-ը։ Եթե փոխում եք bounds-ը, օրինակ՝ տեղափոխելով նրա origin-ը, ապա տարրի պարունակությունը ներսում կշարժվի, բայց ինքնը տեղում կմնա։

Այսպիսով, frame պատասխանատու է դիրքի և չափի համար ծնողի համակարգում, իսկ bounds — տարրի ներքին կոորդինատների համակարգի համար։