gpt4 book ai didi

iphone - SLComposeViewController Views 发送到应用程序中并变得无响应

转载 作者:可可西里 更新时间:2023-11-01 04:53:28 25 4
gpt4 key购买 nike

我的应用程序中有一个按钮,用于调出用于 Twitter 的 SLComposeViewController。呈现 View 时,它会正确设置动画并消失。我发现当它消失时,它被发送到当前 View 的后面,我无法将它取回。我曾尝试手动将顶部的所有 View 发送到代码中,但没有成功。我觉得我的应用程序存在根本性的错误,因为在应用程序中的导航 Controller 的任何级别都可以看到这种行为。下面是 SLComposeViewController 作为应用程序中的导航栏的屏幕截图,我使 ViewController 的 View 具有 0.0f 的 Alpha 值来说明我的观点:

enter image description here

我真的不知道这里发生了什么,我们将不胜感激任何帮助。我用来呈现 SLComposeViewController 的代码非常标准,我已经在另一个应用程序中对其进行了测试并且工作正常:

NSString *message = [NSString stringWithFormat:@"#%@", [twitterInfo objectForKey:@"hashtag"]];

if ([appDelegate isSocialAvailable]) {
// code to tweet with SLComposeViewController
SLComposeViewController *twitter = [[SLComposeViewController alloc] init];
twitter = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter];
[twitter setInitialText:[NSString stringWithFormat: @"%@", message]];
[self presentViewController:twitter animated:YES completion:nil];
}

最佳答案

感谢您发布这个,我也遇到了同样的事情,因为我在我的窗口中添加了一个 CAShapeLayer 以获得渐变效果。你的帖子帮助我弄清楚了这就是问题所在。

看起来这是因为他们正在将他们的 View 层添加到窗口的子层——我可能会在索引 0 处添加!这与您的预期相反,即他们会将自己的 View 作为 subview 添加到呈现 View Controller 的 View 中。

他们一定只是认为人们不会向他们的窗口添加图层,并且他们想确保他们不会与您的 View 堆栈竞争。为什么他们将它放入索引 0 一定只是因为有人习惯于做 -[CALayer insertLayer:layer atIndex:0] 我想。

我不确定,但我猜这可能是任何模态视图 Controller 的情况。

修复非常简单:

[viewController presentViewController:facebookViewController
animated:YES
completion:^{
facebookViewController.view.layer.zPosition = 1000;
}];

关于iphone - SLComposeViewController Views 发送到应用程序中并变得无响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16035778/

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