【问题标题】:Set PKPaymentButton width to superview?将 PKPaymentButton 宽度设置为超级视图?
【发布时间】:2016-06-03 16:40:57
【问题描述】:
我正在以编程方式添加一个 PKPaymentButton(因为我似乎无法在情节提要中简单地将 UIButton 设置为 PKPaymentButton)。我希望我的 PKPaymentButton 是其超级视图的宽度。但是,这似乎不起作用。 (PKPaymentButton 保持 140pts 的预定义宽度。)我尝试将 PKPaymentButton 的水平 contentHuggingPriority 设置为 UILayoutPriorityDefaultLow 但这似乎没有效果。任何想法如何获得调整到我的屏幕宽度的全宽 PKPaymentButton?
【问题讨论】:
标签:
cocoa-touch
autolayout
passkit
【解决方案1】:
我在情节提要中创建了容器视图,然后将带有必要约束的 PKPaymentButton 添加到其中。
这是我的 UIView 类别中的简单方法,可以轻松完成:
-(void) setupWithContentView:(UIView *) contentView
{
contentView.translatesAutoresizingMaskIntoConstraints = NO;
[self addSubview:contentView];
[self addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"|[contentView]|"
options:0
metrics:nil
views:@{@"contentView":contentView}]];
[self addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[contentView]|"
options:0
metrics:nil
views:@{@"contentView":contentView}]];
}