如何在sharekit中处理“sendDidFinish”

时间:2012-03-14 17:50:58

标签: objective-c delegates sharekit

我使用sharekit和mail / twitter / facebook,我对objective-c很新。 sharekit运行良好,并按照它应该发送我的图像。

在我的应用程序中我有截屏功能。我希望应用程序在拍摄屏幕截图时“冻结”,停止向sharekit-action后面的场景发送任何摇动或触摸事件。 在我的屏幕截图层中,我有三个按钮,它们调用指定服务的shareItem方法,如

[SHKTwitter shareItem:item];

vereything工作得很好'直到这里。但现在当发送完成(或取消或出错)时,我需要应用程序“解冻”,sharekit应告诉我的应用程序,允许再次听取任何触摸或动作。

我很抱歉,但我认为我不明白在这里使用委托的概念。我的意思是,'sendDidFinish'是否属于代表?如果是这样,我怎么能告诉sharekit谁是它的代表呢?或者我是否必须编辑发送服务类(如SHKItem或SHKFacebook)本身?

请不要因为这个问题而低估我。我真的想要落后这个谜......

1 个答案:

答案 0 :(得分:12)

SHKTwitter继承自SHKSharer继承的SHKOAuthSharer。 SHKSharer有一个名为“SharerDelegate”的委托协议。

因此,您可以使用SHKTwitter的实例,然后将其委托设置为:

shkTwitterInstance.shareDelegate = yourDelegateObject.

实现委托方法

- (void)sharerFinishedSending:(SHKSharer *)sharer;.

试试。

编辑(其他,更受欢迎,解决方案)

此外,您可以将您的对象设为SHKTwitter对象的“SHKSendDidFinish”通知。

[[NSNotificationCenter defaultCenter] addObserver:yourObject selector:@selector(theMethodthatYouWantToExecuteWhenTheNotificationIsRaised:) name:@"SHKSendDidFinish" object:shkTwitterObject];