在我的iOS应用程序中,我试图在发送短信后发送推文。这里的问题是它显示短信屏幕并点击发送按钮然后控件来到我的“发送推文”方法,但它没有显示“推文”发送屏幕。
当我在没有调用短信发送功能的情况下调用我的“发送推文”方法时,它会工作并显示推文发送屏幕。但是为什么在发送短信后没有显示推文发送屏幕。
//=================================================================================
- (void)messageComposeViewController:(MFMessageComposeViewController *)controller
didFinishWithResult:(MessageComposeResult)result {
//=================================================================================
switch (result)
{
case MessageComposeResultCancelled:
NSLog(@"Result: canceled");
break;
case MessageComposeResultSent:
NSLog(@"Result: sent");
[self logSMSSentInfo];
break;
case MessageComposeResultFailed:
NSLog(@"Result: failed");
break;
default:
NSLog(@"Result: not sent");
break;
}
[self dismissModalViewControllerAnimated:YES];
[self performSelectorOnMainThread:@selector(SendTweet) withObject:nil waitUntilDone:NO];
}
// this function is to send tweet
//============================================
-(void)sendTweet:(NSString*)inTweetAccountInfo{
//============================================
if ([TWTweetComposeViewController canSendTweet])
{
NSString *aTweetMsg;
}
}
答案 0 :(得分:0)
您想要在当前对象的主线程上执行的问题,但是一旦调用[self dismissModalViewControllerAnimated:YES]就会释放您的对象;
因此,您需要将sendTweet方法传递给活动对象。
编辑:
你可以实现一个委托协议并告诉viewController将你的modalView呈现给sendTweet(send tweet方法必须在parentViewController中)。
答案 1 :(得分:0)