Ich möchte -frameForAlignmentRect:
und -alignmentRectForFrame:
verwenden, um Ausrichtungsrezepte in meinen iOS-Apps anzugeben. Aber diese Methoden nicht aufrufen.
Ich habe fast den gleichen Code für iOS und Mac. Es funktioniert perfekt auf OS X, aber nicht auf iOS.
Wie Sie sehen können, hat die iOS-Version auch -alignmentRectInsets:
, was gut funktioniert, aber ich möchte herausfinden, was mit -frameForAlignmentRect:
und -alignmentRectForFrame:
Methoden falsch ist.
Sie müssen Ihren Code ändern von:
%Vor%An:
%Vor%Hiermit wird festgelegt, ob die Autorisierungsmaske der Ansicht in Einschränkungen für das bedingungsbasierte Layoutsystem übersetzt werden soll.
Ich denke in Ihrem Beispiel müssen Sie mit USE_ALIGNMENT_INSETS arbeiten, es ist einfacher mit
zu arbeiten %Vor%Wie auch immer, wenn Sie beabsichtigen, USE_ALIGNMENT_RECTS zu verwenden, wenn Sie nach der vorgeschlagenen Änderung debuggen, werden Sie sehen, dass die Größe der Unteransicht 0 in
ist %Vor%Also, ich würde Ihnen empfehlen, einen Startrahmen zu setzen
%Vor%Aber es ist nicht einfach, Sie müssen die Position sehr gut berechnen oder mehr Einschränkungen verwenden, um die Ansicht in der Mitte der Superansicht zu ermöglichen.
Eine andere Sache sind die Einschränkungen, hier verwenden Sie Code, der veraltet ist:
%Vor%Stattdessen müssen Sie mit
arbeiten %Vor%Danke.
Tags und Links ios autolayout uikit