Ich füge eine Subview zu einer UICollectionViewCell hinzu. Ich füge programmatisch Beschränkungen hinzu, um es die Zelle zu füllen, jedoch füllt die Breite die Zelle nicht.Subview Breite passt nicht superview mit Autolayout
Wenn ich es in der Ansicht Debugger anzeigen, sagt es die Position ist mehrdeutig. Wie kann das sein, da ich alle 4 Seiten an die Superview angeheftet habe?
So sehen die Ansichten im Debugger aus. Die innere, Weiß-Sicht sollten die Eltern passen Breite (blau umrandet):
Inspizieren die Einschränkungen auf der übergeordneten Ansicht zeigt dies mit der „Position mehrdeutig“ Warnung:
Der Code, den ich verwende, ist wie folgt:
[self.contentView addSubview:calloutView];
calloutView.translatesAutoresizingMaskIntoConstraints = NO;
self.contentView.translatesAutoresizingMaskIntoConstraints = NO;
[self.contentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-0-[calloutView]-0-|" options:NSLayoutFormatDirectionLeadingToTrailing metrics:nil views:NSDictionaryOfVariableBindings(calloutView) ]];
[self.contentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-0-[calloutView]-0-|" options:NSLayoutFormatDirectionLeadingToTrailing metrics:nil views:NSDictionaryOfVariableBindings(calloutView) ]];
Wo verwendest du diesen Code? –
UICollectionViewDelegate erstellt eine Zelle und ruft dann die Zellen-Setup-Methode auf, die diesen Code – zorro2b
enthält, aber dieser Code befindet sich in Ihrer Zelle oder in Ihrem ViewController? –