我有一个主视图控制器,它在应用程序启动时显示,它包含一个带有中心凸起按钮的标签栏,用于捕获图像。我已经使用UIimagepicker控制器呈现了一个模型视图控制器,在上传图像后我需要关闭模型并在主视图控制器中调用(UIimagepicker)方法
为此我写了这样的代码 .h文件
ViewController *viewController;
@property (retain) ViewController *viewController;
.m文件
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
if(buttonIndex == 0)
{
[self dismissModalViewControllerAnimated:YES];
[viewController btnTap];
NSLog(@"uploaded");
}
else{
[self dismissModalViewControllerAnimated:YES];
}
}
在viewcontroller .m
中-(void)btnTap{
[self.actForImage showFromTabBar:tabBarController.tabBar];
// act for image is the action sheet
// this method will be called when click on the center button of tabbar
}
我保留了断点并检查了 - (void)btnTap方法未被调用。 有没有其他方法可以调用主视图控制器中的方法。
答案 0 :(得分:1)
代表是答案!
您需要做的是在ModalViewController中设置协议。而不是直接在你的modalViewController中解除它你应该在委托方法中解雇它。
看看这个答案:
Can't dismiss modal view when tap a button
这是解除委托类中的modalviewcontroller的方法。 在ViewController类中解除它后,您可以调用您喜欢的任何其他方法。
编辑: 评论中写的答案越广泛。