键盘下隐藏的SKStoreReviewController按钮

Kas*_*hif 6 keyboard ios swift skstorereviewcontroller

我的swift iOS应用程序有一个显示键盘的活动文本字段.每次用户点击键盘上的返回键,我都会打电话

SKStoreReviewController.requestReview()
Run Code Online (Sandbox Code Playgroud)

这听起来可能过多但是一旦用户给出了评论,上面的陈述将不会做任何事情,所以我认为我的方法是正确的.

问题是在较小的屏幕设备(iPhone 5等)上,显示的SKStoreReviewController按钮隐藏在键盘下方.

因此,用户会因为无法解除SKStoreReviewController而陷入困境.我不想为用户添加键盘隐藏按钮.

我怎么知道什么SKStoreReviewController时候显示所以我可以编程隐藏键盘?

Cod*_*der 3

您无法判断它是否正在显示。

SKStoreReviewController 您可以阅读此处的文档,其中仅显示requestReview()您用来调用它的

但是,如果您想更深入地了解,我提供以下屏幕截图,其中显示了显示请求时调试视图层次结构的外观。

在此输入图像描述

这告诉您,您无法尝试通过以下属性深入挖掘任何内容:presentedViewController尝试猜测屏幕是否正在呈现。

通常,如果您要呈现UIAlertController、 或任何与此相关的 UI 元素,您将看到形成它的 UI 片段堆叠在一起,这表明您可以访问关联的属性以找出所呈现的内容。对于此类,没有提供任何内容,因此您的应用程序不会注意到正在发生的事情。

以下屏幕截图说明了当屏幕上有多个元素时视图层次结构的外观:

在此输入图像描述

正如 Apple 在类文档中提到的那样,您需要开发自己的逻辑,以便在它不会呈现您当前遇到的问题时呈现它。