按钮和自动布局

安德罗宁恩

我想建立这样的界面: 在此处输入图片说明

在禁用自动布局的情况下,我成功创建了这6个按钮,并通过屏幕高度功能中的代码对它们进行了很好的调整。但是,当禁用自动布局时,所有其他控制器都变为“混乱”,因此我尝试在启用自动布局的情况下创建/调整这些按钮。启用自动布局后,无法实现这种界面。我的问题是,有没有什么技巧可以在启用自动布局的情况下调整这6个按钮?也许有图书馆?我真的很累。谢谢您的帮助。

德尔玛

我看到您找到了答案,但是无论如何我都会发布我的答案,因为它使用了不同的方法。当6个按钮之间存在太多依赖关系时,尝试在IB(iOS 6中)中正确设置约束是困难的(因为系统在IB中为您添加了约束),所以我在代码中做到了。我这样做的方式是,按钮可以在任何尺寸的屏幕或任何方向上占据整个屏幕,而不必检查屏幕尺寸:

@interface ViewController ()
@property (strong,nonatomic) NSMutableDictionary *viewsDict;
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    self.viewsDict = [NSMutableDictionary dictionary];
    for (int i=1; i<7; i++) {
        UIButton *b = [UIButton buttonWithType:UIButtonTypeRoundedRect];
        [b setTitle:[NSString stringWithFormat:@"Button%d",i] forState:UIControlStateNormal];
        [b setTranslatesAutoresizingMaskIntoConstraints:NO];
        [self.viewsDict setObject:b forKey:[NSString stringWithFormat:@"b%d",i]];
        [self.view addSubview:b];
    }

    [self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"|[b1][b2(==b1)]|" options:0 metrics:nil views:self.viewsDict]];
    [self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"|[b3][b4(==b3)]|" options:0 metrics:nil views:self.viewsDict]];
    [self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"|[b5][b6(==b5)]|" options:0 metrics:nil views:self.viewsDict]];
    [self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[b1][b3(==b1)][b5(==b1)]|" options:0 metrics:nil views:self.viewsDict]];
    [self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[b2][b4(==b2)][b6(==b2)]|" options:0 metrics:nil views:self.viewsDict]];
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

自动布局显示按钮不固定高度和宽度的圆形

来自分类Dev

CGAffineTransformIdentity和自动布局

来自分类Dev

NSBox 和自动布局

来自分类Dev

iOS:自动布局多个按钮

来自分类Dev

以编程方式自动布局按钮?

来自分类Dev

自动布局防止按钮移动

来自分类Dev

如何在自动布局中修复我的标签和按钮标题?

来自分类Dev

设置UIScrollview和自动布局

来自分类Dev

UIScrollView和自动布局指南

来自分类Dev

使用自动布局和systemLayoutSizeFittingSize

来自分类Dev

自动布局图像和标签

来自分类Dev

UINavigationBar旋转和自动布局

来自分类Dev

自动布局,约束和动画

来自分类Dev

自动布局和对齐约束

来自分类Dev

UIScrollView和自动布局指南

来自分类Dev

自动布局图像和标签

来自分类Dev

自动布局-中间5个按钮

来自分类Dev

带按钮的iOS水平自动布局

来自分类Dev

使按钮列表水平与自动布局对齐

来自分类Dev

IBCollectionOutlet具有自动布局的按钮数组

来自分类Dev

Java按钮布局和显示

来自分类Dev

表单布局和按钮位置

来自分类Dev

通过自动布局实现按钮的网格布局

来自分类Dev

如何使用大小类和自动布局将两个UI按钮在Xib中水平对齐

来自分类Dev

智能和自动按钮放置

来自分类Dev

UIScrollView分页自动布局和情节提要

来自分类Dev

自动布局和最低ios版本

来自分类Dev

iOS 8图像缩放和自动布局

来自分类Dev

约束和自动布局背后的iOS算法