所以我重写了我之前用objective-c编写过的应用程序。在objective-c中,我将数据(5个数组)存储在单独的NSUserdefaults中,然后在新的ViewController中调用它们。
自从我开始使用MonoTouch进行编程以来,这感觉有点不对劲。我现在也使用共享代码,并创建了一个获取数据的类。让我解释一下我的应用程序如何工作:
那么解决这个问题的最佳方法是什么?
答案 0 :(得分:2)
对ViewController进行子类化,在数据的构造函数上添加一些新参数,以便在显示时将数据传递给控制器。
public class MyViewController : UIViewController
{
private MyData _myData;
public MyViewController(MyData myData)
{
_myData = myData;
}
}
然后使用它:
(假设我们已经在另一个具有NavigationController的视图控制器中):
var myViewController = new MyViewController(myData);
this.NavigationController.PushViewController(myViewController, true);
或(作为“模态”)
var myViewController = new MyViewController(myData);
this.PresentViewController(myViewController, true);