问题标签 [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 投票
3 回答
2131 浏览

android - iOS:如何实现相对布局

我正在尝试制作我的 Android 应用程序的 iOS 版本。它包含如下所示的文本:

在此处输入图像描述

共有三个标签:标题、作者和出版年份。我需要显示完整的标题,可能有几行。无论标题有多长,我都希望作者标签直接位于标题和 pub 下方。直接低于那个年份。

在Android中,我只是使用了相对布局来实现这个效果。我怎样才能在 iOS 中做到这一点?自动布局可以以某种方式为我做这件事吗?如果没有,您对在 iOS 中有效显示此信息有什么建议吗?最好我想使用情节提要来实现这一点。

0 投票
2 回答
4857 浏览

iphone - 使用自动布局旋转

我是 Xcode 的初学者,我正在使用带有自动布局的 ios6。

我想从以下位置旋转我的 uiviewcontroller:

在此处输入图像描述

至:

在此处输入图像描述

我想防止我的底栏旋转。与 Apple 的相机应用程序旋转非常相似,但问题是一切都在旋转。

我试着放一些代码,比如

0 投票
2 回答
24276 浏览

ios - 为以编程方式生成的视图实现自动布局

我有一个应用程序,其视图是以编程方式生成的。例子:

是的。将来我会更新到 NIB 并使用界面构建器和故事板,但我已经一年没有做过 ios 编程了。

随着新 iPhone 5 的屏幕尺寸不同,应用程序看起来不太好,我需要实现某种自动布局。现在有没有办法以编程方式而不是使用 IB?

非常感谢!

0 投票
1 回答
1115 浏览

ios - 4英寸屏幕上的自动布局

我试图让这个视图使用自动布局来适应 3.5" 屏幕和 4" 屏幕。我开始觉得仅使用自动布局和 IB 是不可能的。

有什么见解吗?我已经尝试了几乎所有我认为有意义的约束组合(以及许多在黑暗中的刺伤),但没有运气。

这是它在 3.5 英寸屏幕上的外观(来自 IB,但在模拟器中看起来相同)

在此处输入图像描述

这是它在 4 英寸屏幕上的布局方式

在此处输入图像描述

以下是限制条件,如果有更好的方法来显示此信息,请告诉我。

在此处输入图像描述

0 投票
31 回答
53676 浏览

objective-c - 使用 UITableViewCell 子类执行“-layoutSubviews”后仍需要自动布局

使用 XCode 4.5 和 iOS 6,我正在开发一个带有自定义单元格的简单表格视图的应用程序。我在 iOS 5 及更低版本中已经这样做了一百次,但由于某种原因,新的 autoLayout 系统给我带来了很多麻烦。

我在 IB 中设置了我的表格视图和原型单元,添加了子视图并将它们连接为 IBOutlets,然后设置了我的委托和数据源。但是,现在每当从 获取第一个单元格时cellForRowAtIndexPath,我都会收到以下错误:

*** -[ShopCell layoutSublayersOfLayer:] 中的断言失败,/SourceCache/UIKit_Sim/UIKit-2372/UIView.m:5776

*** 由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“执行 -layoutSubviews 后仍需要自动布局。ShopCell 的 -layoutSubviews 实现需要调用 super。

我没有在我的子类单元(ShopCell)中实现 -layoutSubviews 方法,即使我尝试这样做并添加超级调用,因为它表明我仍然得到相同的错误。如果我从 IB 中的单元格中删除子视图,并将其更改为标准 UITableViewCell,一切都会按预期工作,当然我的单元格中没有数据。

我几乎可以肯定我缺少一些简单的东西,但是找不到任何文档或指南来表明我做错了什么。任何帮助,将不胜感激。

编辑:刚刚尝试将其更改为 IB 中的 UITableViewCell 并保留所有子视图,仍然是相同的错误。

0 投票
2 回答
14806 浏览

objective-c - 在 iOS 6 上使用自动布局在 ScrollView 中嵌入 ImageView

我正在尝试使用具有自动布局的新 iOS 6 SDK 制作非常简单的元素。我有一个 ImageView 并将其嵌入到 ScrollView 中。(一切都使用 Interface Builder 构建)。.png 文件已设置,imageView 模式设置为“左上角”。

执行:

当我运行应用程序时,图像不会滚动。在关闭自动布局(使用支柱和弹簧)的情况下做同样的事情,我正在滚动。我想问题出在约束上。有人可以帮我吗?

0 投票
12 回答
318237 浏览

ios - 如何为约束更改设置动画?

我正在用一个更新旧的应用程序,AdBannerView当没有广告时,它会滑出屏幕。当有广告时,它会在屏幕上滑动。基本的东西。

旧样式,我将帧设置在动画块中。新样式,我有一个IBOutlet确定Y位置的自动布局约束,在这种情况下它是距超级视图底部的距离,并修改常量:

横幅移动,完全符合预期,但没有动画。


更新:我重新观看了WWDC 12 演讲“掌握自动布局的最佳实践”,其中涵盖了动画。它讨论了如何使用CoreAnimation更新约束:

我尝试使用以下代码,但得到完全相同的结果:

附带说明一下,我已经检查了很多次,这是在线程上执行的。

0 投票
1 回答
1475 浏览

ipad - iPad:iOS 6.0 AutoLayout 和 iOS 5.0 AutoSize 在一起?

可能重复:
在 iOS 6 中启用自动布局,同时保持向后兼容 iOS 5

我知道 iOS 6.0 支持 AutoLayout 功能,如果我想支持 iOS 5.0,我必须在 willAnimateRotationToInterfaceOrientation 中实现手动方法来调整纵向和横向模式下的控件大小。我的问题是我是否可以进行一些设置,以便我的应用程序在 iOS 6.0 上运行时使用 AutoLayout,而在 iOS 5.0 上运行时使用自定义方法?我认为在运行自定义方法之前检查 iOS 版本应该是解决方案,但我不能同时使用 AutoLayout 和 Autosize 选项。有人可以请提出他们对此的想法。谢谢。

0 投票
1 回答
2482 浏览

iphone - RootViewController 的视图没有通过自动布局调整大小

嗨,在 iOS 6 上使用自动布局时,我的 rootViewController 的“rootView”似乎根本无法正确调整大小。

我的 rootViewController 是从 nib 加载的,我将它添加到视图层次结构中,如下所示:

}

但是当我旋转模拟器时,rootVC 的视图不会调整大小。由于您无法在 xib 中对“rootview”设置任何约束,因此我也尝试了此操作,但没有任何效果:

}

当我注销 rootvc 视图的帧大小时,它始终是纵向格式(w:768,h:1024)

}

有人可以告诉我我在这里缺少什么吗?我在这个问题上浪费了几个小时,却一无所获^^

谢谢

0 投票
2 回答
1941 浏览

ios - Xcode 4.5 故事板崩溃

很多时候,当我尝试在情节提要中编辑 UILabel 时,Xcode 会崩溃。有什么想法可能导致这种情况吗?看起来它与自动布局约束之一有关。这是错误报告: