UINavigationController中的ModalViewController没有动画解雇

时间:2010-07-22 21:06:59

标签: iphone objective-c

我有一个带有多个模态视图控制器的应用程序。它们中的大多数工作正常,除了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];
}

1 个答案:

答案 0 :(得分:3)

这一切看起来都不错,我的猜测是你在发布之前发布了一些东西,导致视图消失。删除您的发布语句,看看它是否解决了问题,然后向后工作以查看它出错的地方。