gpt4 book ai didi

c# - 在 xamarin.ios 中的 View Controller 之间传递数据

转载 作者:行者123 更新时间:2023-11-28 21:05:06 25 4
gpt4 key购买 nike

我正在 Xamarin.iOS (C#) 中开发一个 iPhone 应用程序,我被困在 ViewController 之间传递变量(我正在使用 Storyboard)。

下面列出了我的应用程序的总体布局:

LoginViewController --> TabViewController --> NavigationController --> MainViewController

添加了屏幕截图:

Overview of my Storboard - Explains what I want to do:

我想做的是,当用户的凭据在“LoginViewController”中成功验证后,应用会将用户带到“MainViewController”。

我还想从“LoginViewController”向“MainViewController”传递一个变量(比方说“userName”)。但是,我没有运气。

我在下面发布了我的代码。它正在工作(传递变量)但问题是因为我们直接从 LoginView 推送到 MainView,Tabbar 和 Navigation Bar 不再显示。

如果 tabViewController 存在,在 ViewController 之间传递数据的最佳实践是什么?

// Instantiating the MainViewController
MainViewController controller = this.Storyboard.InstantiateViewController("MainViewController") as MainViewController;

//Here I pass the data from the LoginViewController to the MainViewController
controller.userName= this.userName;

// Show the MainViewController
this.NavigationController.PushViewController(controller , true);

任何建议将不胜感激!

最佳答案

您可以在 NSUserDefaults 中保存一些数据。

var UserData = NSUserDefaults.StandardUserDefaults;
UserData.SetString(this.UserName,"UserName");

你可以在你的应用中的任何地方使用它

var UserData = NSUserDefaults.StandardUserDefaults;
UserData.StringForKey("UserName");

您尝试传递数据的方式是正确的,但您不能直接从 LoginView 打开主视图。如需更多帮助,您应该尝试阅读一些有关使用 TabView 的文章。

https://developer.xamarin.com/guides/ios/user_interface/controls/creating_tabbed_applications/

关于c# - 在 xamarin.ios 中的 View Controller 之间传递数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46156270/

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