Habe ich eine UIToolbar
im Interface Builder und ich habe festgestellt, dass es gesperrt wird 44px hoch. Natürlich möchte ich, um diese größer.
Übernimmt Apple ermöglichen die Größenänderung des Steuerelements? Wenn ja, wie mache ich es?
InformationsquelleAutor der Frage mac_55 | 2010-01-25
Sicher, nur setzen Sie seinen Rahmen anders:
Damit wird Ihre Symbolleiste 35 Pixel hoch. Dies erfordert natürlich ein IBOutlet oder erstellen die UIToolbar programmatisch, aber das ist sehr einfach zu tun.
InformationsquelleAutor der Antwort David Kanarek
Wenn das nicht im SDK-6, es ist möglich, zu lösen, wie unten:
Wählen Sie die toolbar-element, und wählen Sie Editor > Pin - > Höhe eine Einschränkung erstellen.
Gehen Sie auf Ihre View-Controller-Szene, und wählen Sie die erstellte Höhe(44) Einschränkung, dann setzen Sie den Wert, den Sie wollen.
InformationsquelleAutor der Antwort ericmaciel
Fand ich, dass wenn ich den frame auf dem iPad, wenn aus - /einblenden der Symbolleiste zurücksetzen würde sich selbst zurück, bis zu einer Höhe von 44 Pixeln. Ich landete mit zu überschreiben UIToolbar und ändern Sie die Methode:
Diese korrigieren würde, passen Sie die Höhe selbst mit dem ein - /ausblenden.
InformationsquelleAutor der Antwort christophercotton
In iOS 6, mit autolayout, ist der einfachste Ansatz ist ein UIToolbar-Unterklasse, in der Sie überschreiben
instrinsicContentSize
. Hier ist code aus einer meiner apps, wo die Symbolleiste ist groß. Seine Seiten und der Boden sind fixiert, die Seiten und der Boden der superview wie gewohnt.InformationsquelleAutor der Antwort matt
Für Xcode iOS 7.1 9, auto-layout, die Größe ist gesperrt 44px. Die Xcode-Menü die option Editor > Pin - > Höhe gibt es nicht, stattdessen führen Sie die folgende Aktion:
Im InterfaceBuilder, klicken Sie auf die Symbolleiste element, um es auszuwählen.
Strg+nach unten Ziehen, überall in der Symbolleiste und release, wird ein popup-Menü Anzeige die option "Höhe" an der Spitze, wählen Sie es aus.
Haben Sie jetzt eine Höhe Einschränkung, mit zu arbeiten und ggf. einstellen.
InformationsquelleAutor der Antwort cavalleydude
Könnte man auch einfach Bearbeiten Sie die xib-Datei:
öffnen Sie es als source-code und suchen Sie den Eintrag, der definiert den Rahmen für die UIToolbar, etwas entlang der Linien von
<string key="NSFrame">{{0,420}, {320,44}}</string>
und ändern Sie einfach den Wert für die 44 zu, was Größe Sie benötigen.
Diese Weise die Symbolleiste wird größer, und im InterfaceBuilder sehen Sie die neue Größe " ausgegraut, und Sie werden nicht in der Lage, es zu ändern, aber Sie brauchen keine Steckdosen oder code.
InformationsquelleAutor der Antwort Radu Diță
Solange Sie haben eine Höhe Einschränkung auf die Symbolleiste, die Sie verwenden können, dieses kleine snippet, hat mir geholfen, mich anpassen Höhen für Klassen, die Erben von UIView
InformationsquelleAutor der Antwort Alberto Lopez
Ich bin mir nicht sicher, wie das sitzen würde mit Apple - und natürlich es hängt davon ab, wie Sie möchten, verwenden Sie die Symbolleiste, aber können Sie eine Standard-UIView und ändern Sie Ihre Klasse in den Eigenschafteninspektor, um die UIToolbar. Dies gibt Ihnen Transparenz und customisability (in diesem Fall der Höhe) kostenlos, auf Kosten von der layout-bar-button-items.
InformationsquelleAutor der Antwort Robin Macharg
Swift-Lösung:
Den
CGRectMake
ist veraltet. Dies kann ersetzt werden, mit derCGRect
. Dies setzt die Höhe der Symbolleiste, um 20. Das gleiche funktioniert auch für Segmentierte Kontrolle.InformationsquelleAutor der Antwort Ragul Parani
In interface builder, es gibt auch die Möglichkeit "benutzerdefinierte Laufzeit-Attribute".
Fügen Sie einfach einen Eintrag mit Schlüsselpfad "frame" Typ "Rechteck" und stellen Sie den gewünschten Wert.
InformationsquelleAutor der Antwort FredericK