我有一个带有多个模态视图控制器的应用程序。它们中的大多数工作正常,除了UINavigationController中的一个(这样我可以显示一个导航栏)。当显示这个模态视图控制器时,它会动画很好但是当它被解除时它没有动画。我真的很喜欢它的动画。有什么想法吗?
非常感谢!
这是模态视图控制器(我简化了代码,希望不要太多!):
@protocol SettingsDelegate;
@interface Settings : UIViewController <UITextFieldDelegate> {
id<SettingsDelegate> delegate;
}
@property (assign) id<SettingsDelegate> delegate;
@end
@protocol SettingsDelegate <NSObject>
@optional
- (void)Settings:(Settings *)controller dismissModalController:(NSString *)foo;
@end
主程序.h看起来像:
#import "Settings.h"
@interface MainPageController : UIViewController <SettingsDelegate> {
}
@end
主程序.m看起来像这样:
- (void)Settings:(Settings *)controller dismissModalController:(NSString *)foo {
[self dismissModalViewControllerAnimated:YES];
}
- (void)doSettings {
Settings *addController = [[Settings alloc] initWithNibName:@"Settings" bundle:nil];
addController.delegate = self;
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:addController];
[self presentModalViewController:navigationController animated:YES];
}
答案 0 :(得分:3)
这一切看起来都不错,我的猜测是你在发布之前发布了一些东西,导致视图消失。删除您的发布语句,看看它是否解决了问题,然后向后工作以查看它出错的地方。