objective-c – 如何将焦点设置在MFMailComposeViewController的
发布时间:2020-12-16 07:25:21 所属栏目:百科 来源:网络整理
导读:我正在使用标准的样板代码来发送带有MFMailComposeViewController的电子邮件,但我找不到关于在TO字段上设置焦点的信息,当控制器显示时可以看到加号按钮,就像它对“本页的邮件链接”这样的功能一样. Safari或地图中的“共享位置”. MFMailComposeViewControll
我正在使用标准的样板代码来发送带有MFMailComposeViewController的电子邮件,但我找不到关于在TO字段上设置焦点的信息,当控制器显示时可以看到加号按钮,就像它对“本页的邮件链接”这样的功能一样. Safari或地图中的“共享位置”.
MFMailComposeViewController *mailComposer; mailComposer = [[MFMailComposeViewController alloc]init]; mailComposer.mailComposeDelegate = self; [mailComposer setSubject:@"My Subject"]; [mailComposer setMessageBody:@"This is the body of my message" isHTML:NO]; [self presentModalViewController:mailComposer animated:YES]; [mailComposer release]; 解决方法
您可以查看mailComposer对象的视图:
UIView *v0 = mailComposer.view; UIView *v1 = [[v0 subviews] objectAtIndex:0]; // UINavigationTransitionView UIView *v2 = [[v1 subviews] objectAtIndex:0]; // UIViewControllerWrapperView UIView *v3 = [[v2 subviews] objectAtIndex:0]; // MFMailComposeView UIView *v4 = [[v3 subviews] objectAtIndex:0]; // UIView UIView *v5 = [[v4 subviews] objectAtIndex:0]; // MFComposeScrollView UIView *v6 = [[v5 subviews] objectAtIndex:0]; // UIView UIView *v7 = [[v6 subviews] objectAtIndex:0]; // MFMailComposeRecipientView UIView *v8 = [[v7 subviews] objectAtIndex:1]; // _MFMailRecipientTextField 这个v8家伙就是你想要的人.它是UITextField的子类.让它成为第一响应者. 正式地说,你应该检查子视图的类型而不是第一个或第二个对象.但话说回来,正式你根本不应该这样做,因为这都是无证的,并且可能在未来的iOS版本中破坏. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |