ios7 xcode 5 GM: Die Farbe von UIBarButtonItem und der ausgewählte UISegmentedControl-Teil auf dem iOS 6-Gerät behalten die Standardfarbe bei

8

ich portiere jetzt iOS-App auf iOS7 SDK (mit Xcode 5 und Mavericks) und ich habe versucht, UIBarButtonItem Farbe zu ändern, hier ist was ich versuche zu tun:

%Vor%

- Ändern Sie die Farbe für die Leiste, nicht für die Elemente

%Vor%

- funktioniert nicht, gleiche falsche Farbe

%Vor%

- funktioniert nicht, gleiche falsche Farbe

%Vor%

- funktioniert nicht, gleiche falsche Farbe

%Vor%

Ich sehe nicht ausgewähltes Segment mit der richtigen Farbe, aber das ausgewählte Segment hat dieselbe falsche Farbe.

irgendwelche Ideen?

    
user170317 15.09.2013, 21:21
quelle

6 Antworten

15

Sie haben herausgefunden, was getan werden muss, dank der WWDC 2013 - Anpassen des Aussehens Ihrer App für iOS 7.

%Vor%

Dies wird in die anderen Ansichten in Ihrer App gefiltert, also auf dem ersten Bildschirm angezeigt, und wenn Sie zum nächsten Bildschirm gehen, werden Sie sehen, dass die Zurück-Taste ebenfalls rot ist.

Um die Farbe der Navigationsleiste zu ändern, verwenden Sie

%Vor%

Wenn Sie Ihre App für Geräte ausführen, die kleiner als iOS7 sind, sollten Sie überprüfen, ob sie auf den Selektor antwortet

%Vor%     
DogCoffee 16.09.2013 21:57
quelle
10

Für iOS7 funktioniert dieser Code für mich, wenn ich die Farbe einer einzelnen UIBarButtonItem ändern möchte:

%Vor%     
Keith Kennedy 25.09.2013 16:22
quelle
1

Es kann sinnvoll sein, die tintColor -Eigenschaft stattdessen in der UIWindow -Instanz Ihrer App festzulegen. Wenn Sie eine standardmäßige Akzentfarbe verwenden, die Sie in Ihrer gesamten App verwenden, werden alle Steuerelemente in der App mit dieser Farbe getönt.

    
rpowell 17.09.2013 00:06
quelle
1

1 - In iOS 7 wird die Eigenschaft tintColor nicht mehr zum Festlegen der Balkenfarbe verwendet. Verwenden Sie stattdessen die Eigenschaft barTintColor , um die Hintergrundfarbe zu ändern. Sie können den folgenden Code in didFinishLaunchingWithOptions: von AppDelegate.m einfügen.

%Vor%

2 - In iOS 7 sind alle Balkenschaltflächen randlos. Der Zurück-Knopf ist jetzt ein Chevron plus der Titel des vorherigen Bildschirms (oder zeigt nur "Zurück" als Knopftitel an, wenn der Titel des vorherigen Bildschirms Null ist). Um die Schaltfläche "Zurück" zu färben, können Sie die Eigenschaft tintColor ändern, mit der Sie Ihre App schnell und einfach mit einer benutzerdefinierten Farbe versehen können. Unten finden Sie ein Beispielcode-Snippet:

%Vor%     
user2850802 06.10.2013 01:09
quelle
0

self.navigationController.navigationBar.tintColor = [UIColor redColor];

So legen Sie die Farbe für die Rücktaste fest.

Nur ein Hinweis für Personen, die die App mit IOS 6 entwickelt haben, wir haben den obigen Code verwendet, um die Farbe der Navigationsleiste einzustellen. Wenn Sie also die vorherige Einstellung nicht entfernen, sehen Sie die Änderung der Zurück-Schaltfläche nicht.

    
Oceandrive 30.09.2013 16:11
quelle
-2

Ich habe endlich den Weg gefunden, dieses Problem zu lösen. Nach dem Einstellen der Taste müssen Sie 5-7 ms warten (im Fall von iPhone 5s).

%Vor%

Sie sollten die Farbe nicht einstellen, bevor Sie rightBarButtonItem eingestellt haben. Es sollte für iOS 6 & amp; 7.

    
Hiroo Yamada 25.10.2013 02:50
quelle

Tags und Links