Tag: 布局

嵌套的UIStackViews破坏约束

我有一个复杂的视图层次结构,内置在Interface Builder中,嵌套的UIStackViews。 每当我隐藏一些内在的堆栈视图时,我会得到“不可满足的约束”通知。 我已经追查到这一点: ( "<NSLayoutConstraint:0x1396632d0 'UISV-canvas-connection' UIStackView:0x1392c5020.top == UILabel:0x13960cd30'Also available on iBooks'.top>", "<NSLayoutConstraint:0x139663470 'UISV-canvas-connection' V:[UIButton:0x139554f80]-(0)-| (Names: '|':UIStackView:0x1392c5020 )>", "<NSLayoutConstraint:0x139552350 'UISV-hiding' V:[UIStackView:0x1392c5020(0)]>", "<NSLayoutConstraint:0x139663890 'UISV-spacing' V:[UILabel:0x13960cd30'Also available on iBooks']-(8)-[UIButton:0x139554f80]>" ) 具体来说, UISV-spacing约束:当隐藏一个UIStackView的高约束得到一个0常量,但似乎与内部堆栈视图的间距约束冲突:它需要8点之间我的标签和button,这是不可调和的隐藏约束和所以约束崩溃。 有没有解决的办法? 我已经尝试recursion隐藏隐藏的堆栈视图的所有内部StackViews,但这会导致内容漂浮在屏幕之外的奇怪的animation,并导致严重的FPS丢弃引导,而仍然没有解决问题。

向下滚动时ImageView缩放

我怎样才能简单地缩放autolayout与自动autolayout向下滚动? 尝试看视差效果,但不完全是我想要的。 我只想使用scrollView和一个标题ImageView谁可以resize取决于scrollView位置。

在自动布局中,“使用标准值和限制边距”是什么意思?

我已经经历了几个这样的自动布局教程。 但是我仍然不清楚以下选项在引脚对话框中做了什么 标准值,手动值和canvas值有什么区别? 边界checkbox的限制是做什么的? 什么alignment呢?

我如何添加填充到UILabel的固有内容大小?

我在iOS7上使用autolayout,我有这样的问题: 我将一个UILabel放到UIView上,我正在安排自动布局约束,以便标签的centerX =父视图的centerX。 我没有给任何宽度的限制标签。 当我在运行时设置标签的文本时,标签的宽度足以让文本适合,左侧和右侧没有边距/填充。 我想要的是在左侧和右侧有一些填充,以便文本不会从标签开始的位置开始。 黑客实现这可能是设置文本为“文本”,但当然这不是要走的路:) 我怎样才能达到我想要的?

启用+禁用自动布局约束

我有一个简单的(我认为)的问题:我有一个UIImageView ,我已经在故事板中设置了多个约束。 有时,我需要禁用约束,并手动设置其frame ,但后来,我想要重新启用这些约束,并使视图返回到由约束决定的位置。 我以为我可以用这样的东西做到这一点: @IBOutlet weak var imageView: UIImageView! @IBOutlet weak var constraint: NSLayoutConstraint! func example() { //to set its location and size manually imageView.removeConstraint(constraint) imageView.frame = CGRectMake(…) //to cause it to return to its original position imageView.addConstraint(constraint) } 但是,我得到错误2015-08-26 01:14:55.417 Constraints[18472:923024] The view hierarchy is not prepared for the constraint: <NSLayoutConstraint:0x7fbb72815f90 V:[_UILayoutGuide:0x7fbb72814c20]-(100)-[UIImageView:0x7fbb72814540]> 。 […]

以编程方式使用大小类

我(希望)观看所有相关的WWDC2014会话video并阅读文档,所以这个问题主要是为了证实我的怀疑,但请教育我。 我想要做的是使用自动布局的animation视图。 这本身不是问题。 但是这些animation的端点随着不同的方向而变化。 我认为我可以使用大小类来自动移动视图,但是苹果公​​司的开发者指南说,animation必须以编程的方式完成,而且从我可以收集的内容来看,大小类只是一个Interface-Builder的东西。 我的另一个想法是使用IB提供的顶部/底部自定义布局指南,但是这些指南似乎是硬编码的。 我能做的最后一件事情是在收听旋转事件后手动更新约束,但这并不是什么新鲜事,我觉得大小类应该可用于静态接口。 我是否高估了他们的目的? TLDR:给出两点A和B,视图可以有其起源(由于animation),我怎样才能使用大小类或类似的东西移动这两个点?

UICollectionView报纸喜欢布局

可以弯曲UICollectionView来dynamic呈现下面这样的接口(News for iPhone)吗? 或者只能预定义静态布局? 我想要根据图像尺寸(hxw)进行布局,比如小图像的小网格和大图像的小网格,这些都是在运行时根据我从数据源获得的数据决定的。 编辑:复杂的dynamic布局像上面的任何好的教程?

IOS – 如何创build水平滚动列表TabelView

我试图用可滚动的水平项目(具有未知数量的项目)实现一个表视图,如下图所示: 用户界面应该像这样: 在init状态下,表格单元显示一个标签和一些文本,并且该圆形项目从右侧popup 如果用户从右向左滑动,则标签和文本淡出,并且水平列表(单元格内)将其放置 我想过使用TableView和dequeueReusableCellWithIdentifier并创build一个原型单元格,但是我需要记住列表的水平位置并正确地在cellForRowAtIndexPath上初始化单元格,这可能会影响性能。 问:为了实现这个目标,你将使用什么布局,任何input/教程,将不胜感激

Autolayout,UIDynamics和animation

我很新的自动布局,我很困惑如何animation的意见。 我读了很多,我知道你必须坚持约束,编辑它,并将layoutIfNeeded包装在UIViewanimation块中。 但是说到做到这一点,我有点迷路了。 如果有人能向我解释这个animation是如何完成的,我很乐意。 我认为它可能使用UIPanGestureRecognizer来将前导空间的constant更改为容器约束,但是它可能使用了UIDynamics(右边的弹跳效果)。

相当于iOS上的Android的ViewPager? 轻扫/翻页浏览数据

在Android上,使用ViewPager和Fragments可以很方便地在具有相同布局的多页数据之间进行浏览。 用户向左或向右滑动,页面改变。 所有页面只有一个视图控制器和一个布局资源,但是当用户浏览时数据内容会改变。 还有一个左右滑动的animation效果,您可以看到下一页的内容已经加载。 iOS上的这个相当于什么?