2 Stimmen

UIView-Grenzen mit oberer Leiste

Wenn Sie eine UIView mit einer Navigationsleiste im Interface Builder erstellen, nimmt die obere Leiste etwas Platz ein, aber die Ansicht hat immer noch die gleiche Größe. Dies bedeutet, dass der untere Teil der Ansicht nicht sichtbar ist.

Gibt es eine Möglichkeit, die "sichtbare Größe" einer UIView zu ermitteln? Ich möchte eine Unteransicht am unteren Rand des Bildschirms anzeigen, aber ein Teil der Unteransicht ist ausgeblendet, da die übergeordnete Ansicht "unter" den Bildschirm geht.

4voto

Ben Gottlieb Punkte 84876

Sie sollten das 'struts-and-springs'-Steuerelement in IB verwenden, um Ihre Basisansicht so einzustellen, dass sie voll justiert ist. Dann wird die Größe automatisch angepasst. Sobald Sie dies tun, können Sie einfach die view.bounds Eigenschaft verwenden, um auf den sichtbaren Bereich zuzugreifen.

2voto

Matt Gallagher Punkte 14710

Sie sollten die Lösung von Ben Gottlieb verwenden, aber in Bezug auf die Berechnung des sichtbaren Bereichs einer Ansicht namens " view ", könnten Sie wahrscheinlich verwenden:

CGRect viewBoundsInWindow =
    [[[UIApplication sharedApplication] keyWindow] convertRect:view.layer.visibleRect fromView:view];

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X