A Swift framework for setting Auto Layout constraints differently per iOS device size using only Interface Builder.
DeviceLayout is a Swift framework for iOS that allows developers to set Auto Layout constraints differently for each device screen size. It solves the problem of creating adaptive UIs across various iPhones and iPads by enabling per-device constant adjustments directly in Interface Builder without writing code.
iOS developers and UI engineers who need to implement precise, device-specific layouts while minimizing code and leveraging visual design tools.
Developers choose DeviceLayout for its seamless integration with Xcode's Interface Builder, eliminating the need for programmatic layout code and speeding up the adaptation of designs across multiple iOS devices.
📱AutoLayout can be set differently for each device
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Enables setting device-specific constants directly in Xcode's IBInspector using @IBInspectable properties, as shown in the README screenshots for no-code setup.
Includes a detailed enum covering iOS devices from 3.5-inch iPhones to 12.9-inch iPad Pros, allowing precise adjustments for various screen sizes.
Allows adaptive layouts to be configured entirely within Interface Builder, eliminating programmatic constraint code and speeding up development, per the philosophy.
Facilitates quick UI alignment with design tools like Sketch or Zeplin by applying per-device constants in seconds, making collaboration with designers efficient.
The enum is static and may not support new iOS devices without framework updates, requiring maintenance to avoid gaps in coverage.
Heavily relies on Xcode's Interface Builder, making it unsuitable for teams that prefer or require programmatic UI approaches for consistency or version control.
Depends on the Device framework for screen size detection, adding an external library that could introduce compatibility issues or update delays.