Iphone TWTeetComposeViewController在发布新tweet后执行自定义代码
因此,使用iOS5中的新Twitter框架,我们可以简单地用以下代码发布Twitter更新:Iphone TWTeetComposeViewController在发布新tweet后执行自定义代码,iphone,objective-c,ios,xcode,Iphone,Objective C,Ios,Xcode,因此,使用iOS5中的新Twitter框架,我们可以简单地用以下代码发布Twitter更新: if ([TWTweetComposeViewController canSendTweet]) { TWTweetComposeViewController *tweetSheet = [[TWTweetComposeViewController alloc] init]; [tweetSheet setInitialText:@"Tweeting from Steamerduck :
if ([TWTweetComposeViewController canSendTweet]) {
TWTweetComposeViewController *tweetSheet = [[TWTweetComposeViewController alloc] init];
[tweetSheet setInitialText:@"Tweeting from Steamerduck :)"];
[controller presentModalViewController:tweetSheet animated:YES];
}
但是,我想在用户单击send here后执行一些自定义代码:
tweetcomposeviewcontroller发送tweet后,是否可以执行一些自定义代码、我自己的一些方法?您可以指定一个完成处理程序,在用户完成tweet编写后调用该处理程序。它看起来像这样(我还没有机会在设备上测试它):
您可以指定一个完成处理程序,在用户完成编写tweet后调用该处理程序。它看起来像这样(我还没有机会在设备上测试它):
你想让它自动发送推文吗?如果这就是你想要做的,苹果绝对不会允许…(像其他人一样发垃圾邮件和推特)你想让它自动发送推特吗?如果这就是你想要做的,苹果绝对不会允许…(以另一个人的身份发送垃圾邮件和推特)这就是你要做的,只是一个提示,你可能需要在Competition处理程序中添加“解雇代码”,否则,您将不得不双击取消按钮。我已将解雇代码添加到完成的取消部分handler@mttrb它可以工作,但在Xcode中显示了一个警告:在这个块中强烈捕获tweetSheet可能会导致一个保留周期…@mttrb我可以再问一个问题吗?如何在完成处理程序中从Twitter API访问JSON响应。我已将DismissModalViewController的接收者更改为控制器,而不是tweetSheet,因为这更正确,并将避免保留循环。这是您的操作方式,只是一个注记,您可能需要添加“Dismise代码”在completionhandler中,否则您将不得不双击cancel按钮。我已经在completion的cancel部分添加了disclease代码handler@mttrb它可以工作,但在Xcode中显示了一个警告:在这个块中强烈捕获tweetSheet可能会导致一个保留周期…@mttrb我可以再问一个问题吗?如何在完成处理程序中从Twitter API访问JSON响应。我已将DismissModalViewController的接收器更改为控制器,而不是tweetSheet,因为这更正确,并将避免保留周期。
if ([TWTweetComposeViewController canSendTweet]) {
TWTweetComposeViewController *tweetSheet = [[TWTweetComposeViewController alloc] init];
[tweetSheet setInitialText:@"Tweeting from Steamerduck :)"];
// Set a completion handler to be called when the user is done
// composing their tweet
[tweetSheet setCompletionHandler:^(TWTweetComposeViewControllerResult result) {
if (result == TWTweetComposeViewControllerResultDone) {
// Tweet was sent, do something
} else if (result == TWTweetComposeViewControllerResultCancelled) {
// Do something else if the user cancelled
[controller dismissModalViewControllerAnimated:YES];
}
}];
[controller presentModalViewController:tweetSheet animated:YES];
}