Ich mache eine benutzerdefinierte Tastatur und ich muss das Bild des Shift-Symbols in der Shift-Taste zentrieren. Das Bild ist 100px x 100px.Wie zentriert man ein Bild in einem UIButton ohne in beide Richtungen in Swift zu dehnen?
Allerdings ist der Tastenrahmen im Hochformat 36pt x 38pt
, und im Querformat ist es 68pt x 32pt
. Ich habe versucht, Button Bild Einfüge-Eigenschaft zu verwenden, um das Bild zu zentrieren. Es tut dies jedoch nicht.
Ich probierte mich selbst und setzte die Bildkanteneinsätze auf (25,25,25,25)
, die Bildmitte in beiden Größen. Das Symbol wird jedoch zu klein zum Anzeigen.
shiftButton.setImage(UIImage(named: "shift"), forState: .Normal)
shiftButton.imageEdgeInsets = UIEdgeInsetsMake(0,0,0,0)
Ich mache den Knopf programmatisch. Und, ich brauche den Knopf, um sein Seitenverhältnis beizubehalten, d.h. 1:1
. Seine maximale Breite oder Höhe ist immer an die Höhe des Knopfes gebunden. Die Bildbreite/-höhe sollte maximal der Höhe der Schaltfläche sein. Und es sollte nicht in irgendeiner Weise das Symbol verzerren. Die Schaltfläche selbst kann jedoch gedehnt werden.
Ich brauche das Bild, um entsprechend Knopfrahmen zu skalieren aber sein Seitenverhältnis beizubehalten. Und es kann abwärts skalieren oder skalieren, sollte aber immer das Seitenverhältnis 1: 1 beibehalten.
Irgendwelche Vorschläge zur Lösung dieses Problems?
.center und .scaleAspectFit für den neuesten Swift (jetzt mit lowCameCase) –