Reference API Roblox

Engine API

Website

Related

Reference API Roblox

UIAspectRatioConstraint

Ensures the parent UI element maintains a particular aspect ratio.

Member index 3

HistoryMember
726AspectRatio: float
726AspectType: AspectType
726DominantAxis: DominantAxis
inherited from Instance
726Archivable: bool
726Capabilities: SecurityCapabilities
726IsInSandbox: bool
726Name: string
726Parent: Instance
726PredictionMode: PredictionMode
726Sandboxed: bool
726UniqueId: UniqueId
576AddTag(tag: string): null
573ClearAllChildren(): null
462Clone(): Instance
573Destroy(): null
486FindFirstAncestor(name: string): Instance
486FindFirstAncestorOfClass(className: string): Instance
486FindFirstAncestorWhichIsA(className: string): Instance
486FindFirstChild(name: string, recursive: bool = false): Instance
486FindFirstChildOfClass(className: string): Instance
486FindFirstChildWhichIsA(className: string, recursive: bool = false): Instance
486FindFirstDescendant(name: string): Instance
563GetActor(): Actor
486GetAttribute(attribute: string): Variant
462GetAttributeChangedSignal(attribute: string): RBXScriptSignal
631GetAttributes(): Dictionary
648GetChildren(): Instances
462GetDebugId(scopeLength: int = 4): string
707GetDescendants(): Instances
486GetFullName(): string
706GetStyled(name: string, selector: string?): Variant
657GetStyledPropertyChangedSignal(property: string): RBXScriptSignal
576GetTags(): Array
576HasTag(tag: string): bool
486IsAncestorOf(descendant: Instance): bool
486IsDescendantOf(ancestor: Instance): bool
664IsPropertyModified(property: string): bool
698QueryDescendants(selector: string): Instances
573Remove(): null
576RemoveTag(tag: string): null
664ResetPropertyToDefault(property: string): null
573SetAttribute(attribute: string, value: Variant): null
462WaitForChild(childName: string, timeOut: double): Instance
726children(): Instances
726clone(): Instance
726destroy(): null
726findFirstChild(name: string, recursive: bool = false): Instance
726getChildren(): Instances
726isDescendantOf(ancestor: Instance): bool
726remove(): null
462AncestryChanged(child: Instance, parent: Instance)
462AttributeChanged(attribute: string)
462ChildAdded(child: Instance)
462ChildRemoved(child: Instance)
462DescendantAdded(descendant: Instance)
462DescendantRemoving(descendant: Instance)
500Destroying()
657StyledPropertiesChanged()
726childAdded(child: Instance)
inherited from Object
726ClassName: string
726className: string
647GetPropertyChangedSignal(property: string): RBXScriptSignal
647IsA(className: string): bool
726isA(className: string): bool
647Changed(property: string)

Description

The UIAspectRatioConstraint enforces a width‑to‑height aspect ratio on a GuiObject regardless of its core size, even if that size is set as a percentage of its parent. For example, inserting this constraint as a child of a Frame and setting the constraint's AspectRatio property to 2 (2:1) keeps the frame's width at twice that of its height. Similarly, setting this constraint's AspectRatio property to 0.5 (0.5:1) keeps the frame's width at half that of its height.

Setting this constraint's AspectRatio to the default of 1 (1:1) is a convenient way to prevent non‑proportional scaling/stretching of an ImageLabel with a square image asset.

Note that when a UI object is under control of both a layout structure such as UIListLayout and a UIAspectRatioConstraint, the constraint will override the layout and control the object's size.

History 16

Members 3

AspectRatio

TypeDefault
float

This property determines the width‑to‑height ratio to maintain. To flip the ratio to height‑to‑width, take the inverse (divide 1 by the number or raise to the -1st power). This value must be greater than 0.

History 5

AspectType

TypeDefault
AspectType

This property determines how the maximum size of the object is limited.

History 5

DominantAxis

TypeDefault
DominantAxis

This property determines which axis to use when setting the new size of the object, assuming it would otherwise exceed the size of the parent.

History 5

Settings