Tag: 约束

iOS – 设置两个子视图约束的更好方法

我在视图控制器中有两个子视图。 我希望两个子视图在主视图中水平居中,一个在另一个之上,并且相对于主视图具有相同的前导空间和尾随空间。 我可以做的一种方法是设置顶部子视图的主空间和尾部空间相对于主视图,并在主视图中水平居中。 之后,将底部子视图的前导,尾部和中心与顶部子视图alignment。 另一种方式是在主视图上独立设置两个子视图的领先空间,尾随空间和中心 这两种方式我没有什么区别。 因为对我来说,这两者似乎有完全一样的效果。 哪个更好,更值得推荐? 谢谢!

如何居中两个标签

我有两个button。 我想同时在同一行上的两个button水平,我想在左边的button左边,两个button之间,右边的右边button相等的空间。 我想要居中这样的两个button:

具有dynamic大小的单元格的复杂AutoLayout

我有一个包含10个子视图的容器(其中两个是简单的界限,其他是标签)。 该计划看起来像这样。 dynamic标签可能包含巨大的文本,所以单元格应该符合适当的大小以适应内容。 问题是如何手动设置所有的约束…我已经尝试了十几次自己做,但似乎我不擅长这一点。 表视图支持行高的自动尺寸,并使用自定义的估计高度。 在故事板中,它看起来是这样的。 其中蓝色视图是视图C的子视图 。 后面的灰色视图是视图B. 粗体标签是静态的,其他标签是dynamic的。 演示项目 。 如何设置约束? 提前非常感谢!

试图添加简单的约束,但得到了这个错误信息

我正在尝试简单的实验,试图如何将约束添加到对象中。 所以,我创build了一个单一的UIView(黄色)的垂直空间约束= 200从故事板这样的: 这是我的接口文件: #import <UIKit/UIKit.h> @interface ViewController : UIViewController @property (strong, nonatomic) IBOutlet UIView *screenView; @property (strong, nonatomic) IBOutlet UIView *container; @end 我想通过在我的viewDidLoad代码来编程修改_container的垂直空间约束: NSLayoutConstraint *myConstraint =[NSLayoutConstraint constraintWithItem:_screenView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:_container attribute:NSLayoutAttributeWidth multiplier:5 constant:15]; [_container addConstraint: myConstraint]; 但是当我运行它到模拟器,我得到这个错误消息: > 2013-09-19 05:48:26.488 container[6036:c07] *** Terminating app due to > uncaught exception 'NSGenericException', reason: 'Unable to install […]

iOS:在xib视图和它的超级视图之间添加约束

我从xib文件添加一个视图到一个表视图控制器,然后把这个视图放在视图之外,这样当用户点击一个button时,视图从导航栏下滚动到可见状态。 这是下降的观点: 这在iPhone 6上正常工作,但任何更小,下拉视图失去约束,看起来像下面所有混乱: 我相信这是因为在下拉视图和表视图(超视图)之间没有设置约束。 我使用的是PureLayout,但是从iOS8.3 / Xcode 6.3开始,这似乎没有任何function。 我有什么select添加一个约束来下拉视图,所以它是与顶视图,左视图和右视图边缘alignment? 谢谢

为什么自动布局有时是非常不一致的

我有一个视图控制器和一些textviews,我使用高度约束常量dynamic设置textviews的高度我设置不一致的问题来设置两个textviews的高度… 有一天,我为不同的设备(iPhone 4s,iPhone 5s,iphone 6s,iphone6s plus)设置了高度,而且这些设备工作正常,但是..第二天它不工作,我不得不再次设置高度常数。 。 我想知道这是怎么发生的? 为什么前一天工作,为什么我不得不改变? 这个特殊事件让我感到非常困惑,这让我对xamarin.ios本身的自动布局失去了信心? 早些时候,像这样的事情发生了一个视图的最高限制之一。 请有人告诉我,如果有任何其他的事情,我必须注意到,在xamarin.ios自动布局… 请有人澄清

如何使用iOS 6中的多个子视图自动布局现有的自定义视图

我想使用约束的布局,但我有许多内部嵌套Subviews的自定义控件。 而且我将约束添加到顶视图(CustomView),但没有正确布置子视图。 防爆。 我有TextFieldWithLabel类,它显示上方和下方的标签,我创build了TextFieldWithLabel实例的UITextField,并添加到具有约束的超级视图。 但没有按预期显示结果。 虽然它的可见,但不是我想要的地方。为此我不想改变整个TextFieldWithLabel类仇敌自动布局。 请帮忙! usernameTextField = [[TextFieldWithLabel alloc] initWithFrame:CGRectMake(0, 0, 100, 50) name:@"UserName"]; [usernameTextField setTranslatesAutoresizingMaskIntoConstraints:NO]; [superview addSubview:usernameTextField]; NSLayoutConstraint* myConstraint = [NSLayoutConstraint constraintWithItem:usernameTextField attribute:NSLayoutAttributeCenterY relatedBy:NSLayoutRelationEqual toItem:superview attribute:NSLayoutAttributeCenterY multiplier:1 constant:0]; [superview addConstraint:myConstraint]; myConstraint = [NSLayoutConstraint constraintWithItem:usernameTextField attribute:NSLayoutAttributeCenterX relatedBy:NSLayoutRelationEqual toItem:superview attribute:NSLayoutAttributeCenterX multiplier:1 constant:0]; [superview addConstraint:myConstraint]; 屏幕截图:这里没有居中,文本字段(RedColor)也是不可点击的。标签和文本字段放在TextFieldWithLabel中。 请注意:TextFieldWithLabel是ComponentView的子类,ComponentView是UIView的子类。所以我怀疑这可能是问题? 我是否也需要自动布局ComponentsView。

在imageView中的CATransform3dTranslate问题

我有一个CATransform3DTranslate的问题。 我将它与来自KennyTM的代码的CATransform3D连接在一起 我使用Photoshop测量坐标。 这是我的完整代码: background.image = UIImage(named: "backgroundtest") gambar.image = UIImage(named: "imagetest") gambar.layer.anchorPoint = CGPointZero var translate = CATransform3DIdentity translate = CATransform3DTranslate(translate, -160, -85.5, 0) var perspective = CATransform3DIdentity perspective = compute_transform_matrix(0.0, Y: 0.0, W: 320.0, H: 171.0, x1a: 81.5, y1a: 81.48, x2a: 294.44, y2a: 125.66, x3a: 22.02, y3a: 161.66, x4a: 270.21, y4a: 221.11) gambar.layer.transform […]

移动button朝目标使用约束,没有反应?

我想让红色button朝着第二个button的主导位置animation: 一些例子说明了如何用数字来改变“常量”,但是我想自动地把第二个button的主导位置。 我试过这个,但红色的button不动,animation日志被正确调用,虽然: – (void)updateConstr{ NSLayoutConstraint *newLeading = [NSLayoutConstraint constraintWithItem:self.redB attribute:NSLayoutAttributeLeading relatedBy:NSLayoutRelationEqual toItem:self.secondButton attribute:NSLayoutAttributeLeading multiplier:1.0 constant:0.0f]; self.leadingConstraint = newLeading;//is an IBOutlet pointing on the constraint (see the image) [self.redB setNeedsUpdateConstraints]; [UIView animateWithDuration:0.5 animations:^{ [self.redB layoutIfNeeded]; NSLog(@"animations");//is called, but the red button does not move }]; } – (IBAction)firstAction:(id)sender { //after a click on button "one" […]

如何将居中的方形设置为顶部

我有一个只有肖像的应用程序UIView 。 视图以垂直和水平方向 居中 放置 AutoLayout (使用故事板“手动”)。 width等于(main)view.width * 0.9 height是相同的宽度(这是一个正方形)的大小。 我想在这个UIView里面点击一个button,并且只是垂直地animation它,直到它到达屏幕的顶部边界(例如height * 0.9,10 pts,无论怎样)。 当我再次点击时,我想重新定位视图到原来的位置(居中,就像我第一次点击时那样)。 在过渡期间,广场不应该放倒。 在阅读了很多post后,我无法理解这样做的最好方法是什么(我主要是开发者说使用centerX旧技术应该避免,并且对某些版本的SO以奇怪的方式performance感到悲叹)。 我想我应该find一种方法来获得约束的当前“位置”,并将约束分配给“最终”位置,但是我无法做到这一点。 任何帮助表示赞赏