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