UIModalTransitionStylePartialCurl doesn't get back to previous state. (Not dismissing)

戏子无情 提交于 2019-11-26 07:49:38

问题


I\'ve got 2 view controllers, let\'s say A and B. In A, I\'m calling B to be shown with transition style UIModalTransitionStylePartialCurl

[b setModalTransitionStyle:UIModalTransitionStylePartialCurl];
[self presentModalViewController:b animated:YES];

It is working fine. However when I press the curled area in the program compiled with iOS 4.3. It does not dismiss at all. It doesn\'t get back to A view controller...

What the most interesting is that this curl is active and giving response in the app compiled with iOS 5.0.

How can I resolve this problem?
Moreover, why doesn\'t it dismiss the B view controller and get back to A ?


回答1:


Here is the link to Apple site for the Modal View Controllers

Basically, you need to setup delegate, etc. And call dismissModalViewControllerAnimated: method from your viewcontroller A. Let me know if you need further help.

Edit per MiiChiel:

In BController.h file, add this:

@protocol BControllerDelegate <NSObject>
-(void)dismissMe;
@end

@interface BController : UIViewController
//...
@property (assign) id <BControllerDelegate> delegate;
//...
@end

In BController.m file, add this:

@implementation BController
@synthesize delegate;
//...
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
    [self.delegate dismissMe];
}

In the AController.h file, add this:

#import "BController.h"

@interface AController : UIViewController  <BControllerDelegate>

In the AController.m file, add this:

//add this line before presenting the modal view controller B
bController.delegate = self;  // assuming bController is the name of the modal

-(void)dismissMe
{
    //call back from modal view to dismiss it
    [self dismissModalViewControllerAnimated:YES];
}


来源:https://stackoverflow.com/questions/8606674/uimodaltransitionstylepartialcurl-doesnt-get-back-to-previous-state-not-dismi

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!