问题标签 [autolayout]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
7923 浏览

ios - ios自动布局视觉格式-对齐

在 iOS6 中,我使用自动布局。

  • 我以编程方式创建了 2 个视图 v1 和 v2。
  • v2 作为子视图添加到 v1
  • v1 的约束已经以编程方式创建(此处未显示)。
  • 我希望 v1 和 v2 具有相同的大小,并且我希望将 v2 放置在 v1 的顶部,完全匹配水平和垂直中心,以便 v2 正好位于 v1 的顶部

问题:

  • 我怎样才能做到这一点(最好使用视觉格式,如果不可能的话,你可以建议替代方法)?

代码- 下面给出了我的尝试,但它没有提供所需的输出。- 没有抛出错误。V1 放置正确,但 V2 是 V1 的左手角之一

注意 - 我在下面的评论中解释了我想要做什么。

0 投票
2 回答
1324 浏览

ios - 当兄弟姐妹随自动布局更改时视图不会重绘

我有一个应用程序,其 UI 设置如下

虽然我在 IB 中做了布局(见下文)。statusBarView 和 footerView 的高度固定,并且它们的顶部/底部空间(分别)与父视图(VC 的视图)齐平。

在屏幕截图中,您可以看到当屏幕旋转并重绘视图时,中间的 contentView 容器及其子视图会调整大小并正确布局。

我将这些按钮之一的操作设置为调整(蓝色)footerView 的大小。我的期望是,由于设置了约束,因此 contentView 的底部等于 footerView 的顶部,如果我调整页脚的大小,contentView 将自行处理它的大小调整。这没有发生。无论我是否使 footerView 更高或更短,或者将其向上或向下移动,contentView 都保持不变。

我试过 setNeedsUpdateConstraints、setNeedsLayout 等,但都没有效果。

也许我完全错过了自动布局的重点,或者只是如何实现它。为什么当窗口/超级视图更改时视图能够正确布局,而不是约束实际依赖的兄弟视图?

谢谢

默认垂直布局 默认水平布局

0 投票
1 回答
1000 浏览

objective-c - 带有自定义转场的自动布局

我正在尝试使用自定义 segue 在两个视图控制器之间进行交叉溶解,segue 正确启动并按预期执行动画 - 但是在横向模式下,目标视图控制器在动画期间出现在其纵向布局中。一旦动画完成,目标视图控制器就会“捕捉”到它的横向布局。两个视图控制器都是使用自动布局设置的。

下面是我的自定义 segue 的“执行”方法:

是否需要在显示之前手动告诉目标视图控制器触发自动布局?如果是这样,这将如何执行?使用带有交叉溶解的内置转场似乎不会遇到这个问题,我尝试(没有成功)确定我的自定义转场不是在做什么。

这让我困惑了一段时间,任何帮助将不胜感激,如果需要更多详细信息,请告诉我。

0 投票
1 回答
232 浏览

autolayout - Lion 中使用 WebView 的自动布局警告(但不是 Mountain Lion)

在 Lion 中使用具有自动布局的 WebView 时,我收到以下警告:

调用 -[WebHTMLView 布局] 后布局仍然需要更新。
WebHTMLView 或其超类之一可能已覆盖 -layout 而不调用 super。或者,某些东西可能在更新过程中弄脏了布局。两者都是 Cocoa Autolayout 中的编程错误。如果某些前 Cocoa Autolayout 类有一个称为 layout 的方法,则很可能会出现前者,但它应该被修复。

该线程解释了原因:Mac OS X 中的自动布局警告

在 Mountain Lion(MacBook Pro,13 英寸,2009 年中)中,问题消失了——那么为什么我的 Lion 机器(Mac Pro1,1 2006)上仍然出现问题?

0 投票
0 回答
152 浏览

objective-c - 如何设置在满足约束后应该调整哪些视图?

在调整窗口大小时满足所有自动布局约束时,如何指定首选调整大小的视图?

例如,当下面的窗口改变其大小时,我想调整视图 A 而不是视图 B 的大小。在此处输入图像描述

如果我什么都不做,视图 B 会调整大小而不是视图 A。在此处输入图像描述

我想要的是调整视图 A 的大小而不是视图 B。

非常感谢!;-)

0 投票
1 回答
433 浏览

iphone - 图像超过 iPhone 5 上的整个屏幕

我正在创建一个以横向模式显示的应用程序。我遇到的是我有一个横跨屏幕的图形。我如何用这个来解释 iPhone 和 iPhone 5。我有一个 60px 高的 UIImageView,需要在屏幕上一直拉伸。根据我的阅读,没有命名约定表明我使用的是 iPhone 5 图形。我是否需要制作一张 1136X120(iPhone 5)的图形,一张 960X120(iPhone 4s)和一张 480X60(iPhone 4)的图形。我担心的是,如果我只为 iPhone 5 和 iPhone 4s 使用 1136X120,它会将 1136 压缩到 960,这是它的工作原理还是我可以做些什么。

0 投票
2 回答
3985 浏览

ios - iOS:使用自动布局更改 UIScrollview 的内容大小

我在UIScrollView. 我试图在打开键盘时在滚动视图内容的底部添加一些空间,以便用户可以看到所有字段。UISCrollView我使用以下代码将表单视图添加到添加所有需要的约束中:

如您所见,我在第一行中指定了表单的高度并scrollview自动调整其内容大小。现在我想增加表单的高度,所以我尝试用更大的高度重置约束,但它不起作用。然后我尝试使用该[_scrollView setContentSize:]方法,但这也行不通。任何人都可以帮助我吗?

0 投票
0 回答
232 浏览

ios - UILabel 在向左滑动时调整大小(使用自动布局和代码)

当我滑动删除UITableCell子类(ExpenseCell)时,我正在调整大小:

截屏

UILabels这是我用来根据内容调整大小的一段代码:

如果我评论上面的代码,我没有这个问题,但我失去了 autoresizing UILabels

你们是否知道如何AutoLayout通过在现有代码上添加约束或更改现有代码来解决此问题?

提前致谢!

0 投票
3 回答
7107 浏览

iphone - ios 6:使用自动布局约束垂直居中 UILabel

我有一个UILabel我有时想在一个单元格中垂直居中。这必须以编程方式完成。我尝试添加以下约束以使其居中(locName 是 UILabel):

这是我得到的结果:

在此处输入图像描述

它看起来像它的居中,但也许改变了或什么的高度UILabel

这是 IB 中的视图控制器:

在此处输入图像描述

如何以编程方式实现垂直居中?

0 投票
3 回答
3471 浏览

ios - 选择退出单个视图的自动布局?

我有一个在代码中执行其子视图布局的视图。布局对于自动布局来说太复杂了,自动布局会破坏布局代码。有没有办法强制自动布局让这个视图的子视图单独存在?我尝试过覆盖 layoutSubviews,但没有任何乐趣。

谢谢你的帮助。