0

我在我的应用程序中使用 sharekit 将文本发布到 twitter。问题是当用户单击模态视图中的发送到 twitter 按钮时,我需要弹出到根视图控制器(主控制器)。如何做到这一点?

4

2 回答 2

0

如果您运行的是 iOS 5 或更高版本,您可以使用 TWTweetComposer 来发送推文,而不是使用 iOS 6 中的 ShareKit 或社交框架。

但是,如果您想使用 sharekit,您的 modalView 需要一个委托。

您需要创建一个协议。在模态视图标题中使用类似

@protocol TwitterModalDelegate
-(void)closeModal;
@end

然后实现一个符合该协议的 id 作为属性或 ivar(通常称为委托)

@property (nonatomic, assign) id<TwitterModalDelegate> delegate

现在在您的视图控制器中显示模态,告诉它它使用协议。

@interface YourViewControllerName : UIViewController <TwitterModalDelegate>

您需要将模态视图标头导入您的 ViewController 标头。

您现在可以控制模式视图关闭时发生的情况。

-(void)closeModal
{
   [self dismissViewControllerAnimated:YES completion:^
   {  
      [self.navigationController popToRootViewControllerAnimated:YES ];
   }];

}

因此,当您确认已发送推文时,在您的模态视图中,您可以简单地调用

[self.delegate closeModal];

在创建模态视图的实例时请记住:

YourModalView* modalView = [YourModalView alloc]init];
modalView.delegate = self
[self presentViewController:modalView animated:YES completion:nil];
于 2012-11-02T14:54:44.357 回答
0

将您的 sharekit 实例委托设置为您当前的控制器并实现 (void)sharerFinishedSending:(SHKSharer *)sharer; 这是处理完成请求的sharekit委托方法

于 2012-11-02T15:28:43.860 回答