我一直在用UIImageView设置约束后,用手机摄像头的图像初始化它有一些麻烦。如果我运行代码如下:UIImageView和自动布局
UITextView *textView = self.textView;
UIImageView *imageView = [[UIImageView alloc] initWithImage:self.item.accessoryImage];
UILabel *label = self.textLabel;
self.accessoryImageView = imageView;
[self.contentView addSubview:self.accessoryImageView];
[self.contentView removeConstraints:self.contentView.constraints];
[self.contentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[textView]-2-|" options:0 metrics:nil views:NSDictionaryOfVariableBindings(textView, label)]];
[self.contentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-100-[textView]-2-|" options:0 metrics:nil views:NSDictionaryOfVariableBindings(textView, label)]];
[self.contentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"[imageView(==100)]-10-[textView]" options:0 metrics:nil views:NSDictionaryOfVariableBindings(imageView,textView)]];
自动布局决定打破ImageView的(== 100)约束和尺寸而不是所述的ImageView帧为2000+点宽,这是图像的尺寸相同。有没有人知道解决这种情况的方法?
'imageView(== 100)'代表什么?如果你想设置一个固定宽度,为什么不使用'imageView(100)'? '== view'用于设置两个视图之间的维度相等,例如'[按钮1(== BUTTON2)]'。也许autolayout系统将'100'视为标识符? – vokilam