更新到iOS 6后,所有取消按钮在sharekit中都不起作用

时间:2012-09-21 13:31:16

标签: iphone ios sharekit

- (void)cancel
{   
[[SHK currentHelper] hideCurrentViewControllerAnimated:YES];
}

上面给出的是sharekit twitter表单上的取消按钮的代码,但它不起作用。我相信它在更新到iOS 6之前有效。在更新到iOS 6后,我更换了已弃用的版本。

- (void)hideCurrentViewControllerAnimated:(BOOL)animated
{
if (isDismissingView)
    return;

if (currentView != nil)
{
    // Dismiss the modal view
    if ([currentView parentViewController] != nil)
    {
        self.isDismissingView = YES;
        [[currentView parentViewController] dismissViewControllerAnimated:YES completion:nil];
    }

    else
        self.currentView = nil;
}
}

我用dismissViewControllerAnimated替换了dismissModalViewControllerAnimated:YES:YES completion:nil。

现在我注意到取消按钮在任何形式的pinboardform,SHKShareMenu,Instapaper以及所有其他形式中都不起作用。

任何人都知道为什么在更新到iOS 6后,此Sharekit上的取消按钮停止工作。单击取消按钮时没有任何反应。

为什么会这样。是什么原因。

任何想法。

由于

2 个答案:

答案 0 :(得分:3)

修正了它。它必须 presentsViewController 而不是parentViewController。

以下是代码

- (void)hideCurrentViewControllerAnimated:(BOOL)animated
{
if (isDismissingView)
    return;

if (currentView != nil)
{
    // Dismiss the modal view
    if ([currentView presentingViewController] != nil)
    {
        self.isDismissingView = YES;
        [[currentView presentingViewController] dismissViewControllerAnimated:YES completion:nil];
    }

    else
        self.currentView = nil;
}
}

SHK.m中的代码更改使所有取消都有效。现在所有取消都在Sharekit中工作。

答案 1 :(得分:1)

添加以下代码:

[self dismissModalViewControllerAnimated:YES];

在这两种方法结束时:

- (void)cancel {

 [self dismissModalViewControllerAnimated:YES];
}

和:

- (void)save {
 [self dismissModalViewControllerAnimated:YES];
}

SHKTwitterForm.m中,它对我有用。