After viewing the modal view (rate, later, no) nothing.. #41

Open
opened 2025-12-29 18:28:32 +01:00 by adam · 7 comments
Owner

Originally created by @ghost on GitHub (Jun 12, 2016).

Hello,
I trying to work with your framework.
If I put showPromptIfNecessary in a normal view all work fine.
But if I put the same code inside a navigation controller, I saw the modal view asking me what I want to do, but nothing happens after pressing Rate.
What could I look at to fix this?
Many thanks,
Massimo

Originally created by @ghost on GitHub (Jun 12, 2016). Hello, I trying to work with your framework. If I put showPromptIfNecessary in a normal view all work fine. But if I put the same code inside a navigation controller, I saw the modal view asking me what I want to do, but nothing happens after pressing Rate. What could I look at to fix this? Many thanks, Massimo
Author
Owner

@ghost commented on GitHub (Jun 12, 2016):

I noticed that the function getRootViewController return nil...

@ghost commented on GitHub (Jun 12, 2016): I noticed that the function getRootViewController return nil...
Author
Owner

@phimage commented on GitHub (Jul 15, 2016):

same as #43
If you reproduce, step by step find where the method return nil, before or after finding the window, etc...

@phimage commented on GitHub (Jul 15, 2016): same as #43 If you reproduce, step by step find where the method return nil, before or after finding the window, etc...
Author
Owner

@lucaswlt commented on GitHub (Jul 20, 2016):

I am experiencing the same issue, but getRootViewController doesn't return nil in my case.

However in my case, like the issue #43, the rating alert is shown after closing a view presented modally, which is embedded inside a UINavigationController which is itself embedded inside a UIPageViewController . @massimogreco Is your views architecture similar to that ? If yes, it could be a trail to investigate @phimage

@lucaswlt commented on GitHub (Jul 20, 2016): I am experiencing the same issue, but getRootViewController doesn't return nil in my case. However in my case, like the issue #43, the rating alert is shown after closing a view presented modally, which is embedded inside a UINavigationController which is itself embedded inside a UIPageViewController . @massimogreco Is your views architecture similar to that ? If yes, it could be a trail to investigate @phimage
Author
Owner

@csemresari commented on GitHub (Nov 16, 2016):

Same problem.
Modal controller of Armchar appears successfully however nothing happens after pressing Rate.
How can this be fixed, i dont think it is related with a bug on my side.

@csemresari commented on GitHub (Nov 16, 2016): Same problem. Modal controller of Armchar appears successfully however nothing happens after pressing Rate. How can this be fixed, i dont think it is related with a bug on my side.
Author
Owner

@coneybeare commented on GitHub (Nov 29, 2016):

Are you testing in the simulator?

@coneybeare commented on GitHub (Nov 29, 2016): Are you testing in the simulator?
Author
Owner

@jalbano commented on GitHub (Aug 1, 2017):

Same problem -- I'm testing on a real device. getRootViewController() is returning nothing. I assume it has something to do with the fact that I don't use storyboards? Instead, I'm doing this in AppDelegate...

    window = UIWindow(frame: UIScreen.main.bounds)
    window?.windowLevel = UIWindowLevelNormal
    window?.rootViewController = navigationController
    window?.makeKeyAndVisible()

I'm calling rateApp() from my Settings UIViewController -- so no "timing" issue here.

@jalbano commented on GitHub (Aug 1, 2017): Same problem -- I'm testing on a real device. getRootViewController() is returning nothing. I assume it has something to do with the fact that I don't use storyboards? Instead, I'm doing this in AppDelegate... window = UIWindow(frame: UIScreen.main.bounds) window?.windowLevel = UIWindowLevelNormal window?.rootViewController = navigationController window?.makeKeyAndVisible() I'm calling rateApp() from my Settings UIViewController -- so no "timing" issue here.
Author
Owner

@kuchmiyalex commented on GitHub (Aug 1, 2017):

Same thing here. Also calling rateApp() from my settings page, I'm using storyboard though.

As a workaround added these lines in the end of getRootViewController() function:

if let presentingController = UIApplication.shared.keyWindow?.rootViewController {
           if let topController = topMostViewController(presentingController) {
                return topController
            }
}
return nil

@kuchmiyalex commented on GitHub (Aug 1, 2017): Same thing here. Also calling rateApp() from my settings page, I'm using storyboard though. As a workaround added these lines in the end of _getRootViewController()_ function: ``` if let presentingController = UIApplication.shared.keyWindow?.rootViewController { if let topController = topMostViewController(presentingController) { return topController } } return nil ```
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/Armchair#41