gpt4 book ai didi

iphone - MFMessageComposeViewController 关闭键盘

转载 作者:行者123 更新时间:2023-11-29 04:48:39 24 4
gpt4 key购买 nike

我的 MFMessageComposeViewController 遇到问题。我想在应用程序内使用短信。发送短信一切正常,到目前为止一切顺利。但是,当我点击取消按钮(或发送按钮)时,我的 View 顶部消失了,但键盘没有消失。这可能是因为我不使用模态视图,而只使用 addSubview。

-(void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result
{

if (result == MessageComposeResultCancelled)
{
NSLog(@"Message annulé");
[controller resignFirstResponder];
[controller.view removeFromSuperview];
[controller release];
}
else if (result == MessageComposeResultSent)
{
NSLog(@"Message envoyé");
...
}
else
{
NSLog(@"Message non envoyé");
...
}
}

-(void)sendSMS:(NSString *)bodyOfMessage :(Phone *)recipient
{
MFMessageComposeViewController *controller = [[MFMessageComposeViewController alloc] init];

if([MFMessageComposeViewController canSendText])
{
MFMessageComposeViewController *picker = [[MFMessageComposeViewController alloc] init];
picker.messageComposeDelegate = self;

NSMutableArray *toRecipients = [[NSMutableArray alloc]init];
[toRecipients addObject:recipients.phoneNumber];
[picker setRecipients:(NSArray *)toRecipients];
[toRecipients release];

NSString *bodyString = nil;
bodyString = bodyOfMessage;
[picker setBody:bodyString];

[self addSubView:picker.view];
[picker release];
}
}

有什么想法吗?我只能使用 modalView 吗?

抱歉拼写错误...

谢谢。汤米

最佳答案

是的,你必须使用modalviewcontroller。

[self presentModalViewController:picker];

此外,您还创建了 MFMessageComposeViewController 的两个实例,第一个用于检查它是否可以发送文本,然后另一个用于实际显示它。我建议只创建一个,这对内存更好:)而且第一个正在泄漏,因为您没有释放它。祝你好运!

关于iphone - MFMessageComposeViewController 关闭键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9225894/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com