cocos2dでゲームを書いています。MFMailComposeViewController をシーンに追加したいと考えています。なので、そのシーンでCcLabelをタッチするとメールシートが開かれます。
@interface EmailScene : CCScene <MFMailComposeViewControllerDelegate>
{
MFMailComposeViewController *picker;
}
-(void)displayComposerSheet;
@end
@implementation EmailScene
- (id) init {
self = [super init];
if (self != nil) {
[self displayComposerSheet];
}
return self;
}
-(void)displayComposerSheet
{
[[CCDirector sharedDirector] pause];
picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;
NSArray *toRecipients = [NSArray arrayWithObject:@"srikanth.rongali786@gmail.com"];
[picker setToRecipients:toRecipients];
[[[CCDirector sharedDirector] openGLView] addSubview:picker.view];
[[CCDirector sharedDirector] stopAnimation];
}
- (void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error
{
[[CCDirector sharedDirector] resume];
CCScene *Scene = [CCScene node];
CCLayer *Layer = [GameWinScreen node];
[Scene addChild:Layer];
[picker.view removeFromSuperview];
[[CCDirector sharedDirector] startAnimation];
[picker dismissModalViewControllerAnimated:YES];
[[CCDirector sharedDirector] replaceScene:Scene];
}
@end
代替テキスト http://www.freeimagehosting.net/uploads/4a77b9ceb9.png
しかし、問題は私のゲームがランドスケープ モードであることです。そのため、メールシートを横向きで表示する必要があります。しかし、ここではメールシートが縦長モードで表示されています。そして、キーボードはランドスケープ モードで表示されます。ただし、メール作成シートは縦向きです。
また、「iPhone から送信」を「iPad から送信」に変更するにはどうすればよいですか。
ありがとうございました。
代替テキスト http://www.freeimagehosting.net/uploads/3eb39ea1de.png