【发布时间】:2014-06-01 15:11:42
【问题描述】:
我使用 WinDev Mobile 开发,它会生成一个项目,然后我使用 XCode 打开进行编译。 只是在facebook上的WM分享功能还没有开发,我必须在ObjC中开发
我从代码开始:
if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) {
SLComposeViewController *controllerSLC = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook] ;
[controllerSLC setInitialText:myMessage];
[controllerSLC addURL:[NSURL URLWithString:myUrl]];
[controllerSLC addImage:[UIImage imageNamed:myImage]];
// NSLog (@"% @", [UIApplication sharedApplication] keyWindow.rootViewController.)
[self presentViewController:controllerSLC animated:YES completion:Nil];
controllerSLC.completionHandler = ^(SLComposeViewControllerResult result) {
NSString *output = nil;
switch(result) {
SLComposeViewControllerResultDone box:
output = @ "Your tweet has-been sent" ;
status = 2;
// NSLog (@" SENT ");
break;
SLComposeViewControllerResultCancelled box:
output = @"Your tweet has-been canceled ";
status = 3;
// NSLog (@" canceled ");
break;
default:
break;
}
[controllerSLC dismissViewControllerAnimated:YES completion:nil] ;
};
}
我只有一个错误:
Warning Attempt to present <SLComposeViewController > on <CFenPrincipaleViewController> Whose view is not in the window hierarchy !
我添加了代码:
UIViewController *activeController = [UIApplication sharedApplication] keyWindow.rootViewController. ;
if ([ activeController isKindOfClass:[UINavigationController class]]) {
activeController = [(UINavigationController *)activeController visibleViewController] ;
}
[activeController presentViewController:controllerSLC animated:YES completion:Nil];
它适用于窗口主页应用程序,我没有错误。
但是当我在另一个窗口上调用相同的函数时,错误返回...... 提前感谢您的帮助
【问题讨论】:
-
Aff 我发帖后才发现,刚刚添加:else if (activeController.modalViewController) {activeController = activeController.modalViewController;}
标签: ios objective-c view hierarchy