2017-10-08 2 views
1

Ich habe ein Problem, wo ich eine Ansicht (indicatorView) 's Breite gleich einer Schaltfläche will. Ich benutze Snapkit, aber ich denke, dass dieses Problem auch mit nackten NSLayoutConstraint relevant sein sollte. Hier ist, was ich mache, Breite gleich button zu machen.Constraint zu Breite gleich einem anderen

indicatorView.width.equalTo(button.snp.width) 

Allerdings macht dies die Breite gleich der Schaltfläche auf die Breite des indicatorView, statt der Breite des indicatorView machen zu Tasten Breite gleich.

Wie kann ich die Richtung der Beziehung angeben? Ist das möglich?

+0

Beziehen Sie sich auf eine 'ActivityIndicatorView'? –

+0

Eine Einschränkung wie diese ist immer bidirektional. Es sagt nur, dass die zwei Artikel die gleiche Breite haben müssen. Sie müssen eine explizite Breite für Ihr UIButton durch eine Breitenbeschränkung oder durch das Binden seiner Kanten einrichten. – danieltmbr

Antwort

0
let f = indicatorView.frame 
indicatorView.frame = CGRect(x: f.origin.x, y: f.origin.y: width: button.snp.width, height: f.height) 
1
indicatorView.translatesAutoresizingMaskIntoConstraints = false 
indicatorView.widthAnchor.constraint(equalToConstant: button.widthAnchor).isActive = true 
0

wickeln Sie diese in der richtigen Verschluss? So sollte es in etwa so aussehen:

indicatorView.snp.makeConstraints { (make) in 
     make.width.equalTo(button) 
} 
Verwandte Themen