Frage

Ich bin mit UISwitch in iOS 3 wechseln element in meiner app.Es hat Standard-Farbpalette blau, aber ich ändern möchten die Farbe in Braun.

Wie kann ich wählen Sie eine andere Farbe für die UISwitch element in iOS 3?

Wie kann ich wählen Sie eine andere Farbe für die UISwitch element in einer modernen iOS-app (iOS 5+)?

War es hilfreich?

Lösung

Für eine moderne iOS XX Version überspringt die Antwort, wie es null Relevanz hat in letzter Zeit. Immer noch hier? In iOS 3. Sie können es nicht. Aber Sie wissen ... Leute landen hier wegen Rang und Kommentare, die andere Versionen und Sachen so ...

Die fünfte iOS Version ermöglicht nun eine dokumentierte Art und Weise, dies zu tun. Mit der Eigenschaft onTintColor

UISwitch *s = [[UISwitch alloc] initWithFrame:CGRectMake(100, 100, 100, 100)];
s.on = YES;
s.onTintColor = [UIColor redColor];
[self.view addSubview:s];
[s release];

produzieren diese

Es ist eine Sache, die das Aussehen einer Farbe angefordert wurde

Edit: Ich habe keine Ahnung, warum jemand kommen würde, durch und rollen wieder die Antwort nur auf die Frage zu beschränken, während nicht das gleiche für alle Antworten zu tun

.

Bearbeiten mehr: In iOS 3 hatten Sie einige undokumentierte Funktion zu nutzen. Früher gab es hier einen Link zu dieser sein aber es brach. Und wenn Sie getan haben, dass Ihr App möglicherweise wegen des Farbwechsel abgelehnt bekommen.

Es Art beginnt mit diesem, das sollte genug sein, damit Sie es woanders finden:

UISwitch *aSwitch = [[UISwitch alloc] initWithFrame:someRectangle];
[aSwitch setAlternateColors:YES];
//Do something with aSwitch
[aSwitch release];

Ich kann es nicht empfehlen. Und das abwechselnd aus unbeliebt.

Andere Tipps

Schließlich mit iOS 5 können Sie die Farbe des Schalters mit der Eigenschaft onTintColor ändern können.

UISwitch *s = [[UISwitch alloc] initWithFrame:CGRectMake(100, 100, 100, 100)];
s.on = YES;
s.onTintColor = [UIColor redColor];
[self.view addSubview:s];
[s release];

erzeugt diese:

Geben Sie Bildbeschreibung hier

Für eine globale Änderung für alle UISwitch Elemente in Swift 3, verwenden Sie das Aussehen proxy:

UISwitch.appearance().onTintColor = UIColor.brown

unter der AppDelegate application:didFinishLaunchingWithOptions: Methode.

Zur Zeit werden Sie Textwerte von Ein / Aus oder 0/1 für eine UISwitch begrenzt. Sie können mit Farbton der Farbe anpassen. Für die weitere Anpassung würde ich so etwas vorschlagen, was oben geht mit einer komplett kundenspezifische Lösung gepostet

ex. [mySwitch setOnTintColor:[UIColor colorWithRed:0 green:175.0/255.0 blue:176.0/255.0 alpha:1.0]];

Quelle: http://www.raywenderlich.com/ 4344 / User-Interface-Anpassung-in-ios-5

EDIT: Für iOS3, Sie auf eine benutzerdefinierte implimentation begrenzt sind, würde ich mit eigenen Bildern Vertauschen zweier Tasten vor. In späteren iOS-Versionen werden Sie viel mehr Kontrolle und gebaut in Individualisierungsmöglichkeiten gegeben.

Werfen Sie einen Blick auf die custom UISwitch-Steuerelement, das ich gebaut habe, mir zu erlauben, ändern Sie die Hintergrundfarbe des Steuerelements.Sie könnte verwenden die gleiche Methode, um den text zu ändern, die schriftart oder die Farbe des Textes sehr einfach.

http://www.homick.com/posts/custom-uiswitch-control

Der code ist verfügbar auf GitHub und beinhaltet eine PSD -, die verwendet wird, um den Bau von drei verschiedenen PNG Dateien, die vom Steuerelement verwendet.Sie können ändern Sie den Inhalt der psd-Datei so erstellen Sie die PNG-Dateien im beliebigen format Sie möchten.Swap diese in der Steuerung und gehen Sie Weg.

Dies gibt viel mehr Optionen als nur orange und blau.

Für Swift 3:

var mySwitch : UISwitch = ...
mySwitch.onTintColor = UIColor.blue
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top