pushViewController not working on iPad only
I have a tab bar view controller with a view controller member, which is embedded in a navigation view controller. In this view controller, I have a tableview, with a list of items. When you click on an item, you are directed to another view controller. Here is the code of the row that is selected:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)
print([indexPath.row])
let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let sleepViewController = storyBoard.instantiateViewController(withIdentifier: "SleepItemEnter") as! SleepEnterTimesViewController
sleepViewController.daySelected = sleepList[indexPath.row].dayOfWeek
sleepViewController.daySelectedInt = indexPath.row
self.navigationController?.pushViewController(sleepViewController, animated: true)
Now it has been working fine on all iPhones I tested. But now I tested it on iPad Pro and it doesn't work. The line "self.navigationController?.pushViewController" isn't working. The new view controller isn't showing at all.
Why would this be, only on iPad?
ios swift uitableview uiviewcontroller
|
show 1 more comment
I have a tab bar view controller with a view controller member, which is embedded in a navigation view controller. In this view controller, I have a tableview, with a list of items. When you click on an item, you are directed to another view controller. Here is the code of the row that is selected:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)
print([indexPath.row])
let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let sleepViewController = storyBoard.instantiateViewController(withIdentifier: "SleepItemEnter") as! SleepEnterTimesViewController
sleepViewController.daySelected = sleepList[indexPath.row].dayOfWeek
sleepViewController.daySelectedInt = indexPath.row
self.navigationController?.pushViewController(sleepViewController, animated: true)
Now it has been working fine on all iPhones I tested. But now I tested it on iPad Pro and it doesn't work. The line "self.navigationController?.pushViewController" isn't working. The new view controller isn't showing at all.
Why would this be, only on iPad?
ios swift uitableview uiviewcontroller
1
Isself.navigationControllernil when run on the iPad?
– rmaddy
Nov 11 '18 at 19:59
Use the debugger or add a print statement.
– rmaddy
Nov 11 '18 at 20:08
I printed print(self.navigationController), and it was nil
– RJB
Nov 11 '18 at 20:10
Can you add a screenshot of your storyboard, or atleast show how you've instantiated yourUITabBarController,UIViewControllerandUINavigationController?
– Zonily Jame
Nov 12 '18 at 2:53
1
Can u try with Segue? It will be very useful.
– McDonal_11
Nov 12 '18 at 6:12
|
show 1 more comment
I have a tab bar view controller with a view controller member, which is embedded in a navigation view controller. In this view controller, I have a tableview, with a list of items. When you click on an item, you are directed to another view controller. Here is the code of the row that is selected:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)
print([indexPath.row])
let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let sleepViewController = storyBoard.instantiateViewController(withIdentifier: "SleepItemEnter") as! SleepEnterTimesViewController
sleepViewController.daySelected = sleepList[indexPath.row].dayOfWeek
sleepViewController.daySelectedInt = indexPath.row
self.navigationController?.pushViewController(sleepViewController, animated: true)
Now it has been working fine on all iPhones I tested. But now I tested it on iPad Pro and it doesn't work. The line "self.navigationController?.pushViewController" isn't working. The new view controller isn't showing at all.
Why would this be, only on iPad?
ios swift uitableview uiviewcontroller
I have a tab bar view controller with a view controller member, which is embedded in a navigation view controller. In this view controller, I have a tableview, with a list of items. When you click on an item, you are directed to another view controller. Here is the code of the row that is selected:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)
print([indexPath.row])
let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let sleepViewController = storyBoard.instantiateViewController(withIdentifier: "SleepItemEnter") as! SleepEnterTimesViewController
sleepViewController.daySelected = sleepList[indexPath.row].dayOfWeek
sleepViewController.daySelectedInt = indexPath.row
self.navigationController?.pushViewController(sleepViewController, animated: true)
Now it has been working fine on all iPhones I tested. But now I tested it on iPad Pro and it doesn't work. The line "self.navigationController?.pushViewController" isn't working. The new view controller isn't showing at all.
Why would this be, only on iPad?
ios swift uitableview uiviewcontroller
ios swift uitableview uiviewcontroller
edited Nov 11 '18 at 19:59
rmaddy
238k27309376
238k27309376
asked Nov 11 '18 at 19:56
RJB
330722
330722
1
Isself.navigationControllernil when run on the iPad?
– rmaddy
Nov 11 '18 at 19:59
Use the debugger or add a print statement.
– rmaddy
Nov 11 '18 at 20:08
I printed print(self.navigationController), and it was nil
– RJB
Nov 11 '18 at 20:10
Can you add a screenshot of your storyboard, or atleast show how you've instantiated yourUITabBarController,UIViewControllerandUINavigationController?
– Zonily Jame
Nov 12 '18 at 2:53
1
Can u try with Segue? It will be very useful.
– McDonal_11
Nov 12 '18 at 6:12
|
show 1 more comment
1
Isself.navigationControllernil when run on the iPad?
– rmaddy
Nov 11 '18 at 19:59
Use the debugger or add a print statement.
– rmaddy
Nov 11 '18 at 20:08
I printed print(self.navigationController), and it was nil
– RJB
Nov 11 '18 at 20:10
Can you add a screenshot of your storyboard, or atleast show how you've instantiated yourUITabBarController,UIViewControllerandUINavigationController?
– Zonily Jame
Nov 12 '18 at 2:53
1
Can u try with Segue? It will be very useful.
– McDonal_11
Nov 12 '18 at 6:12
1
1
Is
self.navigationController nil when run on the iPad?– rmaddy
Nov 11 '18 at 19:59
Is
self.navigationController nil when run on the iPad?– rmaddy
Nov 11 '18 at 19:59
Use the debugger or add a print statement.
– rmaddy
Nov 11 '18 at 20:08
Use the debugger or add a print statement.
– rmaddy
Nov 11 '18 at 20:08
I printed print(self.navigationController), and it was nil
– RJB
Nov 11 '18 at 20:10
I printed print(self.navigationController), and it was nil
– RJB
Nov 11 '18 at 20:10
Can you add a screenshot of your storyboard, or atleast show how you've instantiated your
UITabBarController, UIViewController and UINavigationController?– Zonily Jame
Nov 12 '18 at 2:53
Can you add a screenshot of your storyboard, or atleast show how you've instantiated your
UITabBarController, UIViewController and UINavigationController?– Zonily Jame
Nov 12 '18 at 2:53
1
1
Can u try with Segue? It will be very useful.
– McDonal_11
Nov 12 '18 at 6:12
Can u try with Segue? It will be very useful.
– McDonal_11
Nov 12 '18 at 6:12
|
show 1 more comment
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53252644%2fpushviewcontroller-not-working-on-ipad-only%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53252644%2fpushviewcontroller-not-working-on-ipad-only%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
Is
self.navigationControllernil when run on the iPad?– rmaddy
Nov 11 '18 at 19:59
Use the debugger or add a print statement.
– rmaddy
Nov 11 '18 at 20:08
I printed print(self.navigationController), and it was nil
– RJB
Nov 11 '18 at 20:10
Can you add a screenshot of your storyboard, or atleast show how you've instantiated your
UITabBarController,UIViewControllerandUINavigationController?– Zonily Jame
Nov 12 '18 at 2:53
1
Can u try with Segue? It will be very useful.
– McDonal_11
Nov 12 '18 at 6:12