我在我的应用程序中使用sharekit将文本发布到twitter。当用户在模态视图中点击发送到推特按钮时,我需要弹出到根视图控制器(主控制器)。如何做到这一点?
答案 0 :(得分: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];
答案 1 :(得分:0)
将您的sharekit实例委托设置为当前控制器并实现(void)sharerFinishedSending:(SHKSharer *)sharer;这是处理已完成请求的sharekit委托方法