草庐IT

NSLayoutConstraint

全部标签

ios - NSLayoutConstraint constraintWithItem 在 iOS8 Beta 4 中无法正确处理嵌套 View

我正在为iOS8更新我的应用程序,并注意到[NSLayoutConstraintconstraintWithItem:..]的行为发生了变化。这在iOS7中工作正常,但在iOS8中,具有嵌套subviewView的约束无法正常工作。NSLayoutConstraint*myConstraint=[NSLayoutConstraintconstraintWithItem:myView.mySubview.labelattribute:NSLayoutAttributeToprelatedBy:NSLayoutRelationEqualtoItem:label2attribute:NSLa

ios - 如何将 MASConstraint 转换为 NSLayoutConstraint?

我目前在我的应用中使用“Masonry”和“POP”。我想知道如何为Masonry创建的约束设置动画?所以这是我的代码:[imageViewmas_makeConstraints:^(MASConstraintMaker*make){make.size.equalTo([NSValuevalueWithCGSize:CGSizeMake(ScreenWidth,ScreenHeight)]);make.top.equalTo(self.mas_top);}];所以这是一个简单的例子。当POP为约束的变化设置动画时,它需要这样的东西(我在这里保存了一些代码):@property(weak

ios - CGAffineTransform 和 NSLayoutConstraint 冲突

我有一个View(mainView),它有4个约束,使它的所有4个边都粘在它的superView上。换句话说,我正在制作它,所以它的大小与它正上方的superView完全相同。问题是,当我这样做时:CGAffineTransformscaleT=CGAffineTransformMakeScale(0.7f,0.7f);self.mainView.transform=scaleT;为了让它更小,我预计它会与约束发生冲突,但是没有抛出异常。我期望它与约束冲突的原因是因为现在mainView小了70%,所以它不可能坚持它的superView的边缘。相反,它所做的是将自己置于其父View的中

ios - 如何判断 NSLayoutConstraint 是水平的还是垂直的?

这看起来应该是一个简单的任务,但是有没有办法以编程方式告诉NSLayoutConstraint是水平约束还是垂直约束?我能想到的尝试改变这种差异的唯一方法是调用[constraintdescription];然后在结果字符串中搜索"V:"或“H:”我想找到这些信息的原因是我在storyboard上的prototypeUITableViewCell上设置了2个几乎相同的约束,唯一的区别在于一个描述了与superview的水平距离,另一个描述了垂直距离。我想删除垂直的、以编程方式添加的约束,以描述在给定从我的服务器返回的特定参数的情况下添加的新View。任何建议都会非常有帮助!编辑:我接受

ios - 跟踪 NSLayoutConstraint 崩溃?

我对某些NSLayoutConstraint设置有疑问,这些设置来自iOS9(我认为)。无论如何,我收到以下控制台错误:ThisNSLayoutConstraintisbeingconfiguredwithaconstantthatexceedsinternallimits.Asmallervaluewillbesubstituted,butthisproblemshouldbefixed.Breakonvoid_NSLayoutConstraintNumberExceedsLimit()todebug.Thiswillbeloggedonlyonce.Thismaybreakinth

ios - NSLayoutConstraint 和 MKMapView

在我的viewDidLoad方法中,我有创建MKMapView、一些约束和UIToolbar的代码:我有一个MKMapView:MKMapView*mapView=[[MKMapViewalloc]init];[mapViewsetTranslatesAutoresizingMaskIntoConstraints:NO];mapView.userInteractionEnabled=TRUE;mapView.showsUserLocation=TRUE;mapView.mapType=MKMapTypeHybrid;mapView.delegate=self;[mapViewsetUs

ios - 停用 NSLayoutConstraint iOS 7

我正在开发一个目标为iOS7的应用程序,当我将该应用程序部署到iPhone4时出现以下错误。[NSLayoutConstraintsetActive:]:unrecognizedselectorsenttoinstance我调查了一下,发现setActive是在iOS8中引入的。问题是,在iOS7左右,setActive的替代方案是什么?我需要以编程方式操纵约束,但似乎无法在任何地方找到答案。 最佳答案 另一种方法是从View中添加/删除约束:[myViewaddConstraint:constraint];[myViewremov

ios - 是否有将实例变量与 NSLayoutConstraint 的可视格式一起使用的最佳实践?

假设我有一个来自名为label的父类(superclass)的实例变量,我想使用视觉格式设置自动布局约束。如果我尝试在格式字符串中使用self.label,则会出现解析错误,而且我无法从子类访问_label。目前有效的解决方法如下,但看起来有点难看。有没有更好的办法?UILabel*label=self.label;NSDictionary*views=NSDictionaryOfVariableBindings(label,_textField);[self.contentViewaddConstraints:[NSLayoutConstraintconstraintsWithVis

ios - 暂时移除NSLayoutConstraint?

我有一个使用AutoLayout布局的UITableViewCell子类,我想要一个小动画,其中ImageView会变换、放大一点并缩小。目前,由于限制,图像右侧的标签也在移动(这是应该的)。我想要一个快速简单的方法来临时说“在这个动画运行时将这些标签留在它们当前所在的位置”。这是我不需要删除和重新添加这些约束就可以做的事情吗? 最佳答案 从iOS8开始NSLayoutConstraints现在有一个active您可以更改的属性myConstraint.active=NO;.这将删除约束,同时将此值设置为YES将[重新]添加它:Ac

ios - 程序化 NSLayoutConstraint 动画问题

所以我试图为一些布局约束设置动画,但运气很差,我什么也没看到,然后我收到一条错误消息,说明它如何不能同时满足所有约束等。我正在使用一个名为PullableView的类谁的动画用的是旧风格[UIViewcommitAnimation]所以我对它进行了子类化并在我的代码中添加了我认为用于动画约束的东西......没有这样的运气并且试图为其制作动画甚至让它做很多事情被证明是困难的我只是得到“无法同时满足约束”。问题是我对这个约束业务还很陌生,所以我不知道从哪里开始。这是错误,另一个几乎相同,但针对centerY。"",""我当然会[pullRightViewsetTranslatesAuto