2016-05-30 11 views
-1

Ich möchte äußere Grenze für UIButton machen. Wenn ich auf die Schaltfläche Randbreite hinzufügen klicken, nicht innerhalb der abgerundeten Schaltfläche - außerhalb dieser Schaltfläche.Abgerundete Rect UIButton mit äußeren Rahmen

P.S. Ich benutze diesen Code auf Taste Runde machen:

button.layer.cornerRadius = 0.5 * button.frame.size.width 
    button.clipsToBounds = true 

Und das für die Grenz:

self.button.layer.borderWidth = CGFloat(10) 

Jetzt habe ich dieses Ergebnis:

GIF RESULT

Aber ich brauche Grenze außerhalb der Taste. Wenn mir jemand hilft, ist es erstaunlich, danke.

Antwort

1

Fügen Sie einfach Alpha (Transparenz) hinzu und ändern Sie statt des Rahmens den Alpha-Wert. stellen Sie die Grenzfarbe wie folgt:

let borderColor = UIColor(red: 0.0/256.0, green: 0.0/256.0, blue: 0.0/256.0, alpha: 0.0) 

und ändern Sie den Alpha-Wert. Auf diese Weise sieht es so aus, als ob Sie den Rahmen an der Außenseite der Schaltfläche hinzufügen würden.

Jetzt haben Sie nicht angegeben, ob Sie die Animation auch wollten. Wenn Sie die Animation möchten, sollten Sie einfach den Rahmen außerhalb der Grenzen des Knopfes zeichnen, es könnte kniffliger sein, und der Rahmen hätte nicht die Funktionalität der Taste.

Eine weitere Möglichkeit, den Button und die Animation beizubehalten, besteht darin, hinter der Schaltfläche einen Kreis zu zeichnen und den Rahmen transparent zu machen, um ihn dann zu animieren.

Dies sind nur drei Ihrer Optionen, ich bin sicher, es gibt mehr ...

+0

Es tut mir leid, nicht zu verstehen. Ich brauche einen Rahmen außerhalb des Buttons und ändere diese Rahmenbreite. (Zum Beispiel in der Animation.) danke –

+0

@F. Sv Ich denke du hast viel mehr Möglichkeiten. Wählen Sie einen, der Sinn macht und damit spielt. Hoffe es hilft – Idan

+0

Vielen Dank! –