So ändern Sie den übergang animation von unten nach oben in der Navigations-controller?
Ich bin neu in iOS. Ich bin versucht zu ändern, der übergang animation in der navigation-controller laden Sie eine neue UIView controller von unten nach oben, mit Segue. Ich glaube, es wird nicht allzu schwer zu implementieren, aber kann sein, ich bin nicht in der Lage, es zu verstehen.
Konnte ich nicht finden keine Lösung in anderen Beiträgen.
Hier ist der code, den ich versucht habe:-
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if ([segue.identifier isEqualToString:@"alarmSegue"]) {
tab2ViewController *destViewController = segue.destinationViewController;
UIView *destView = destViewController.view;
destViewController.selectionName = @"alarms";
[sender setEnabled:NO];
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1.0];
[UIView animateWithDuration:0.0
delay:0.0
options: UIViewAnimationOptionCurveLinear
animations:^{
[destView setTransform:CGAffineTransformMakeTranslation(0, -1000)];
//[destView setFrame:CGRectMake(0, 440, 400, 45)];
//destView.frame = CGRectMake(0, 0, 320, 460);
}
completion:^(BOOL finished){
[sender setEnabled:YES];
}];
[UIView commitAnimations];
}
}
Will ich einfach nur zu implementieren, die einen EINFACHEN übergang von unten nach oben, mit Segue. Ich möchte, um einige Eigenschaften der Ziel-controller sowie.
InformationsquelleAutor Niraj Burde | 2014-03-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ersetzen Sie den code zwischen
[UIView beginAnimations:nil context:nil];
und[UIView commitAnimations];
(inklusive dieser zwei Zeilen) mit den folgenden:Können Sie weitere hinzufügen, die Verzögerung, die Optionen und die Fertigstellung Parameter, die UIView Animation-Methode. Xcode wird wahrscheinlich Hilfe, die Sie mit der autocompletes.
InformationsquelleAutor dezinezync
Gut sind Sie fast da.
Müssen Sie ändern sich zwei Dinge vor allem:
1 Ändern Sie die ursprüngliche position der Ansicht. Sie möchten, dass die anzeigen angezeigt werden von unten nach oben, also zunächst Ihre Ansicht am unteren Rand sein soll. Dieses Stück code geschrieben werden soll, bevor die animation.
2 Dann müssen Sie die Folie von unten in die ursprüngliche position , damit im inneren der animation-block:
Eine weitere Anregung, ich denke, Sie sind mit einer neueren version von iOS(vor iOS4) anstatt animation Blöcke verwenden UIView animation-Methode
Weitere Infos finden Sie Beschreibung.
EDIT :
Nach Ihrer Bearbeitung auf die Frage, die Sie suchen, ändern Sie die übergangsanimation für NavigationController in der app mittels storyboard. Für die, die Sie nutzen könnten Custom Segue. Erstellen Sie eine custom segue, eine Klasse, die Unterklassen UIStorySegue und überschreiben Sie die
perform
Methode wie diese:Ändern Sie die segue-Klasse, um diese custom segue in der storyboard-als auch, es zu machen-Funktion.
Und ja du hast Recht, ich bin targeting 7.0 iPad
Nach animierend, segue nicht durchgeführt, und so die Eigenschaften, die erforderlich sind, bei der Ziel-controller ist nicht erhalten. Wie kann ich übergang mit animation?
verwenden Sie einen navigation-controller? Wenn ja, dann sind Sie gefragt, eine falsche Frage. Sie sollten dann sehen, wie Sie den übergang animation in der navigation-controller. die Lösung, die ich eingefügt wäre mehr nützlich, wenn Sie hinzufügen, die Ansicht als unteransicht auf eine andere Ansicht
oh ist es! Lassen Sie mich die Frage anders stellen dann. Und wie haben Sie die Idee habe, was ich habe versucht zu erreichen, können Sie mir helfen mit, dass das dann???
InformationsquelleAutor Puneet Sharma
Versuchen Sie es mit
transition effects
Es wie als string
@"left"
oder@"top"
Danke! Ich habe es. Aber was ich versuche, ist zu öffnen Sie eine neue Ansicht, die animiert von unten nach oben, eine einfache animation, wie der Standard (von rechts nach Links).
tut Sie es nicht öffnen Sie die neue Ansicht in ähnlicher Weise
es animiert den übergang von der aktuellen Ansicht, wenn Sie zu gehen aus dem Bildschirm
InformationsquelleAutor Himanshu Joshi