背景
我试图以编程方式将CustomBadge(自定义UIView)锚定到右边距,相当于IB中的尾随空间到容器边距。
代码
badge = CustomBadge( string: String( badgeValue ), withStyle: badgeStyle )
badge!.frame = frame
badge!.hidden = true
self.view.addSubview( badge! )
// badge!.setTranslatesAutoresizingMaskIntoConstraints( false )
let trailingMargin = NSLayoutConstraint(item: badge!, attribute: NSLayoutAttribute.TrailingMargin, relatedBy: NSLayoutRelation.Equal,
toItem: view, attribute: NSLayoutAttribute.RightMargin, multiplier: 1, constant: 0 )
view.addConstraint( trailingMargin )
let constY = NSLayoutConstraint(item: badge!, attribute: NSLayoutAttribute.CenterY, relatedBy: NSLayoutRelation.Equal, toItem: StageIndicator, attribute: NSLayoutAttribute.CenterY, multiplier: 1, constant: 0 )
view.addConstraint( constY )
结果显示徽章(红色25)没有进入边距!
其他试验
或者,如果我发表评论
badge!.setTranslatesAutoresizingMaskIntoConstraints( false )
徽章刚刚消失。
我做错了什么?