ban*_*i86 2 c# uiviewcontroller xamarin.ios
我有一个关于Monotouch的问题.
情况:我有2个ViewControllers.第一个(我们称之为VC-A)看起来类似于联系人编辑屏幕,这意味着它有一个包含多个Sections的TableView,每个Sections包含Buttons和TextFields.现在,当用户单击其中一个按钮时,他将进入第二个ViewController(VC-B),它显示包含数据库数据的TableView.当用户点击这些行中的任何一行时,VC-B将被关闭,我想将所选的数据库条目(字符串)显示为首先打开VC-B的Button(在VC-A中)的标题.
当我去年做了一个Objective-C项目时,我设法通过使用代表将数据发回到堆栈中,但我还没有找到一种方法,但它在Monotouch中是如何工作的.
我在这里已经阅读了几个关于使用AppDelegate或使用单例的问题,但我不确定这是从子视图返回数据的正确方法.
您可以复制委托模式.将C#委托添加到VC-B,它接受一个参数,一些数据结构.在VC-B的" ViewWillDisappear"中,调用委托它不是null并将数据传递给它.这样,您的调用VC可以访问数据,但您不需要两个控制器之间的紧密耦合.它所要做的就是在VC-B中注册一个委托方法.
由于MonoTouch是.NET4,您可以使用Func<MyDataStructure>或Action<MyDataStructure>不需要使用完全限定的委托类型.
| 归档时间: |
|
| 查看次数: |
1094 次 |
| 最近记录: |