iOS: Wie kann die DIDFINISHWITHRESULT -Nachricht nach der Anzeige für immer verschwinden?
-
26-10-2019 - |
Frage
Ich habe eine E -Mail -Delegate -Methode, die eine Ergebnismeldung anzeigt. Wie kann die Nachricht für immer verschwinden, nachdem die Ergebnismeldung angezeigt wurde, damit sie nicht dort klebt? Hier ist der Codeausschnitt.
- (void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error
{
message.hidden = NO;
switch (result)
{
case MFMailComposeResultCancelled:
message.text = @"Email canceled";
break;
case MFMailComposeResultSaved:
message.text = @"Email saved";
break;
case MFMailComposeResultSent:
message.text = @"Email sent";
break;
case MFMailComposeResultFailed:
message.text = @"Email failed";
break;
default:
message.text = @"Email not sent";
break;
}
[self dismissModalViewControllerAnimated:YES];
}
Lösung
Klingt so, als ob Sie wahrscheinlich eine wollen NSTimer
, etwas wie:
...
[self dismissModalViewControllerAnimated:YES];
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:2.0 ///< Change to number of seconds before `message' will be "cleared"
target:self
selector:@selector(clearMessage)
userInfo:nil
repeats:NO];
}
- (void)clearMessage {
message.hidden = YES;
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow