gpt4 book ai didi

ios - 纯粹在代码中工作时,相当于 IB 文档上的 `useAutolayout` 标志

转载 作者:行者123 更新时间:2023-11-29 01:07:27 24 4
gpt4 key购买 nike

在使用 Interface Builder 时(无论是何种文档、Storyboard、View Controller、View 等),File Inspector 中都有一个复选框来Use Auto Layout.

enter image description here

检查一个空文档的来源,我们看到它被翻译成一个名为 useAutolayout 的标志:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="6211" systemVersion="14A298i" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES">
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="6204"/>
</dependencies>
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
</objects>
</document>

在没有 Interface Builder 的情况下使用纯代码构建 UI 有什么等价物?

注意:请注意我发布了一个相关问题here .然而,这个新问题针对的是 useAutolayout 属性的技术细节细节,而前者从更高的层面看待问题,这就是为什么我发现发布一个新问题而不是更新问题是合适的。其他。

最佳答案

没有这样的等价物,因为界面生成器 XIB 文件是一个说明如何创建 NIB 文件的规范,它是一组存档的 UI 对象。 UI 对象,如果它们被配置为使用约束并且实际上至少指定了一个约束,则使用 translatesAutoresizingMaskIntoConstraints 来决定在运行时做什么。界面构建器标志有效地运行一些处理来更新存档对象以设置或取消设置该标志。

因此,在代码中,如果您要添加自己的约束,您还需要运行

view.translatesAutoresizingMaskIntoConstraints = NO;

禁用旧的自动调整大小掩码,以免弄乱一切...

关于ios - 纯粹在代码中工作时,相当于 IB 文档上的 `useAutolayout` 标志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36173798/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com