2016-04-13 10 views
0

Ich arbeite an der Integration von s MFMailComposer zum Senden von Textnachrichten in meiner App. Unten ist mein Code für das Erstellen und die Nachricht Sharing-Komponente Anzeige:Falsch mit MFMailComposer Aussehen

enter image description here

Ich habe versucht Einstellung:

- (void)shareWithMessages { 

    if(![MFMessageComposeViewController canSendText]) { 
     UIAlertView *warningAlert = [[UIAlertView alloc] initWithTitle:@"Error" message:@"Your device doesn't support SMS!" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]; 
     [warningAlert show]; 
     return; 
    } 

    NSString *message = self.articleTitle; 
    message = [message stringByAppendingString:@" "]; 
    message = [message stringByAppendingString:self.urlString]; 

    MFMessageComposeViewController *messageController = [[MFMessageComposeViewController alloc] init]; 
    messageController.messageComposeDelegate = self; 
    [messageController setBody:message]; 

    // Present message view controller on screen 
    [self presentViewController:messageController animated:YES completion:nil]; 
} 

Wenn die gemeinsame Nutzung Komponist in weiß dargestellt wird, wird die „Neue Nachricht“ Text angezeigt die Tönungsfarbe wie so:

[[messageController navigationBar] setTintColor:[UIColor blackColor ]];

... aber das hatte keine Wirkung. Weiß jemand, warum der Text auf weiß gesetzt und daher nicht lesbar ist?

+0

haben Sie den Farbton Farbe global für Navigationsleiste ändern (zB in AppDelegate) irgendwo in ur code? –

Antwort

0

Wahrscheinlich irgendwo in Ihrem Code ändern Sie die [UINavigationBar Aussehen]. So versuchen, das Aussehen der UINavigationBar Einrichtung vor dem Aufruf

shareWithMessage 

Vielleicht eine der folgenden 3 der Trick:

[[UINavigationBar appearance] setTintColor:[UIColor yourColor]]; 
[[UINavigationBar appearance] setBarTintColor:[UIColor yourColor]]; 
[[UINavigationBar appearance] setTitleTextAttributes: 
    @{NSForegroundColorAttributeName:[UIColor yourColor]}]; 
+0

Hmm, guten Ruf. Ich habe das Aussehen global im 'AppDelegate' eingestellt. Ich habe Ihren Vorschlag kurz vor dem Aufruf von '[self presentViewController: messageController animiert: YES completion: nil];' versucht, aber es hat immer noch das gleiche Ergebnis. In ähnlicher Weise habe ich auch versucht, [[messageController navigationBar] setTintColor: [UIColor blackColor]]; ', und immer noch nichts. – narner