Unable to simultaneously satisfy constraints.

Unable to simultaneously satisfy constraints

表示无法同时满足所有约束。

一、出现的场景

当我创建一个width为100的视图,我添加距左约束300,居右约束300后,运行后视图不显示,而且控制台有输出。

原因:屏幕的宽度为640时,而上面100+300+300已经超出屏幕的宽度,这是width被压缩,所以导致了这个问题。。。

二、基本概念

1、intrinsicContentSize:固有大小。即视图在不受约束影响时,本来的尺寸。

2、Content Hugging Priority:内容压缩优先级。即阻止view返回的实际尺寸比intrinsicContentSize大的优先级。默认为251,如果某约束优先级低于251,则不拉伸视图,动态增加低优先级的约束值。

3、Content Compression Resistance Priority:内容抗压缩优先级。默认为750,如果某约束优先级低于750,则不压缩视图,动态减少低优先级的约束值。

在autoLayout中,默认添加的约束的优先级为1000,如果约束设置不妥当,则会压缩/拉伸视图,那么如果设置了Content Hugging Priority/Content Compression Resistance Priority,则解决了约束设置和intrinsicContentSize冲突的问题

知识总结参考链接:http://blog.csdn.net/miao033009/article/details/46876973

时间: 2024-12-22 04:17:02

Unable to simultaneously satisfy constraints.的相关文章

cordova for ios: Unable to simultaneously satisfy constraints.

使用cordova开发ios项目的时候,在上传图片碰到一个问题.使用html的<input type="file"/>标签来选择照片或者拍照片,引起了布局报错,然后图片上传过程中很容易崩溃闪退. html页面代码: <html><head></head> <body> <input type="file" /> </body> </html> 然后在真机测试,点击选择文件

自动布局报错(两条连线冲突):Unable to simultaneously satisfy constraints

这个报错有些长: Unable to simultaneously satisfy constraints.    Probably at least one of the constraints in the following list is one you don't want.     Try this:         (1) look at each constraint and try to figure out which you don't expect;         (2

iOS使用代码调整约束做动画效果时出现Unable to simultaneously satisfy constraints.

出现这个问题时, 首先应该仔细看错误, 去除多余的存在冲突的约束, Unable to simultaneously satisfy constraints. Probably at least one of the constraints in the following list is one you don't want. Try this: (1) look at each constraint and try to figure out which you don't expect;

Reveal常用技巧(翻译来自Reveal官网blog)

翻译来自官网:http://revealapp.com/blog/reveal-common-tips-cn.html 以下基于Reveal 1.6. 用于快速上手的内置应用 刚刚下载Reveal,啥都还没配置呢,想先随便玩玩看,怎么办? 我们花了不少时间开发这个复杂程度类似与实际场景的Sample应用──Soundstagram(音频分享版的Instagram, ¯\_(ツ)_/¯),就是为了让大家能最快速地上手Reveal,尝试它的各种强大功能. 在 Help 菜单项中,点击 Inspect

(翻译)开始iOS 7中自动布局教程(二)

这篇教程的前半部分被翻译出来很久了,我也是通过这个教程学会的IOS自动布局.但是后半部分(即本篇)一直未有翻译,正好最近跳坑翻译,就寻来这篇教程,进行翻译.前半部分已经转载至本博客,后半部分即本篇.学习IOS自动布局的朋友可以看看.自动布局很强大. 这篇教程绝对的最好的学习IOS自动布局的文章,没有之一 原文地址:Beginning Auto Layout Tutorial in iOS 7: Part 2 正文如下: 请注意: 团队成员Matthijs Hollemans (IOS学徒系列的作

[New learn]AutoLayout调查

1.简介 Autolayout旨在解决不同高宽度的屏幕下的显示问题,通过增加给控件增加约束来达到不同屏幕间的自适应. 2.问题产生与解决方法 Autolayout解决的控件屏幕自适应问题,如果没有这个技术那么会发生什么呢?如应用为在3.5英寸屏幕下的创建了两个view. 当运行于iphone4等3.5英寸的模拟器下时候完全正常.                        但是如果我们将其运行于6+的模拟器后会怎么样呢?貌似蓝色块与边缘的间隔变大了. 原因就在于我们传统布局的时候都使用的是据对

iOS:Masonry 英文原档介绍

Masonry 英文原档介绍: Masonry is still actively maintained, we are committed to fixing bugs and merging good quality PRs from the wider community. However if you're using Swift in your project, we recommend using SnapKit as it provides better type safety w

iOS 8 AutoLayOut入门

http://blog.csdn.net/asdfg13697116596/article/details/42562565 iOS 8 AutoLayOut入门自从iOS6带来Auto Layout这个特性以来,用户界面的布局便变得简单起来.iOS8更是做的更好本文主要针对初学者分享一下自己最近学习AutoLayout的心得体会.Let’s Start!首先,什么是AutoLayout?简单来说,就是自动布局,当你旋转屏幕或者缩放你的UI来适应不同大小的屏幕等,程序的视图看起来依然很nice,

IOS开发之绝对布局和相对布局(屏幕适配)

之前如果做过Web前端页面的小伙伴们,看到绝对定位和相对定位并不陌生,并且使用起来也挺方便.在IOS的UI设计中也有绝对定位和相对定位,和我们的web前端的绝对定位和相对定位有所不同但又有相似之处.下面会结合两个小demo来学习一下我们IOS开发中UI的绝对定位和相对定位.在前面的博客中所用到的UI事例用的全是绝对定位,用我们Storyboard拖拽出来的控件全是绝对定位的,就是我们可以同改变组件的frame来改变组件的位置和大小.而相对定位则不同,相对定位是参考组件周围的元素来确定组件的大小或