Wie kann ich das automatische Layout erhalten, um die intrinsische Größe eines UIImageView zu überschreiben?

9

Ich habe ein Problem mit dem automatischen Layout meiner Detailansicht in UISplitViewController . Meine Ansichtshierarchie enthält ein UIImageView mit einem dekorativen Element, und die innere Größe der Bildansicht scheint das Layout der übrigen Steuerelemente zu überfrachten.

Dies sind die Einschränkungen, die ich für die Bildansicht angegeben habe:

%Vor%

Das gewünschte Verhalten besteht darin, dass die Größe der Bildansicht so geändert wird, dass sie ihre Superansicht ausfüllt, wie in den beiden oberen Einschränkungen beschrieben. Das tatsächliche Verhalten, das ich sehe, ist, dass die Bildansicht nur den horizontalen Raum einnimmt, der durch seine intrinsische Größenbeschränkung beschrieben wird. Es scheint auch das Layout aller seiner Geschwisteransichten zu ändern, so als ob die Superview nur Ansichten in einem Rechteck so breit wie die Bildansicht auslegte.

Ich dachte, dass das Angeben der Umgehungspriorität der Bildansicht so niedrig wie möglich sein würde, würde die anderen Einschränkungen es überschreiben, um die Bildansicht zu ändern. Was mache ich hier falsch?

    
Greg 17.07.2014, 15:16
quelle

1 Antwort

4

Also, ich habe endlich eine Lösung gefunden.

Lösung ist, die Umgehungspriorität von SuperView zu hoch (750 oder mehr) zu erhöhen und die Komprimierungswiderstandspriorität von UIImageView zu niedrig (250 oder weniger) zu verringern. Dadurch werden Abhängigkeiten die intrinsische Größe des Bildes überschreiben.

%Vor%     
gunjot singh 09.08.2016 10:46
quelle