c# - Monotouch SplitView 改变细节 View

标签 c# ipad xamarin.ios uikit

请原谅我要展示的新颖程度。

我在 Monotouch 中创建了一个新的 iPad Master/Detail (UISplitViewController) 应用程序。 左边的主 Controller 是一个 UITableViewController。右边的细节只是一个UIViewConroller。这些在 AppDelegate 代码中默认加载。

然后在主 Controller 中,我向表中添加了一些项目并覆盖了 RowSelected() 事件,效果很好,所以我可以选择项目。我添加了一个额外的 UIViewController (DetailViewController2),当在表中选择一个项目时,我希望它显示在屏幕的右侧。其实哪一项都无所谓,我只想把DetailViewController所在的右边的内容改成DetailViewController2。我已经尝试了很多东西,但没有任何效果——我知道这应该是显而易见的,但我迷路了。

感谢您的帮助。

最佳答案

如果您正在使用 UISplitViewController,更改主 Controller 和从 Controller 的方法是更新 ViewControllers 属性。它总是需要主 Controller 和细节 Controller 。 如果你只想更新细节,你的代码应该是这样的:

var masterController = splitController.ViewControllers[0];
var newDetailController = new DetailViewController2();
splitController.ViewControllers = new UIViewController[] { masterController, newDetailController };

有关文档,请参见此处: http://developer.apple.com/library/ios/#documentation/uikit/reference/UISplitViewController_class/Reference/Reference.html

关于c# - Monotouch SplitView 改变细节 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12520871/

相关文章:

C# if else、switch、bool

iphone - UIPageViewController 手势问题

svn - 从雪豹升级到雪狮后,monodevelop 失去了颠覆支持

Xamarin.iOS 构建 - LLVM 已禁用

c# - 将字符串列表放入 NSUserDefaults 对象

c# - 在 C# 中将二维数组转换为一维数组?

c# - 在Unity3D中读取NFC标签

c# - 在 ASP.NET CORE 应用程序 EF Core 库中不从数据库返回新插入的记录 ID?

iphone - iOS中UIPopoverController和DetailViewController的触摸事件问题

iphone - CoreText 绘图、接收触摸、触摸坐标困惑