因此,我有两个视图控制器,在应用程序加载时加载到应用程序委托上。一个是用于登录页面,其中我有一个用户名和密码,另一个是UITabBarViewController。用户登录后,我只需删除登录视图,从而显示UITabBarViewController。问题是,在我的UITabBarViewController中,我需要来自ViewController的用户名和密码。我怎么才能解决这个问题?
附加信息:
基本上,我想做的是:
现在,在登录后,我希望UITabBarViewController中的所有UITabBarViewController能够获得用户在第一个登录屏幕中输入的用户名和密码。
发布于 2011-02-15 05:06:46
我认为最好的设计是让标签栏的控制器呈现一个用于登录的模态视图控制器。控制器选项卡栏将是LoginViewController的委托,当登录完成时,LoginViewController将通知它的委托。成功完成登录后,选项卡栏的控制器就可以取消LoginViewController。
现在我在你更新答案之后写了这段代码。您可以了解如何添加UINavigation栏和表视图。问题是在视图控制器之间传递数据,而不是我回答如何一起通过一组视图。我强烈推荐斯坦福大学的iTunes大学的iOS编程课程,如果你想了解更多关于如何将许多视图和控制器放在一起的完整应用程序的话。
我提供了一个完整、完整和工作的示例,演示如何正确使用委托在LoginViewController和UIViewController之间共享数据(在您的示例中,UIViewController将被选项卡条控制器替换)。我还演示了如何使用NSUserDefaults保存这些数据,该应用程序可以从其他地方访问。
该示例的所有代码都可以找到这里。
发布于 2011-02-15 05:02:26
1使用根控制器共享数据。
您可以将数据放在根控制器中,根控制器创建两个视图。
根控制器可以将数据传输到其子视图。
2或使用类构造函数。
创建视图时,可以使用数据为其提供参数。
发布于 2011-02-15 05:05:02
这不是什么大问题。
您可以在NSString类中创建两个appDelegate变量,并将属性设置为它们。以便您可以访问整个项目中的这些变量。
您将在登录页面中设置值,并访问tabBarController中的值。
就是这样。
雷加德
萨蒂亚
https://stackoverflow.com/questions/5000023
复制相似问题