這裏沒有很多細節在你的問題和評論...
如果override
的RowSelected
方法,那麼你很可能從UITableViewSource
權繼承了新的類型?如果是這樣,那麼你應該讓它的構造函數保留對UITableViewController
的引用,並在稍後使用此引用來呼叫PresentModalViewController
。
E.g.
public class MyTableViewSource : UITableViewSource {
UITableViewController ctrl;
public MyTableViewSource (UITableViewController c)
{
ctrl = c;
}
public override void RowSelected (UITableView tableView, NSIndexPath indexPath)
{
tableView.DeselectRow (indexPath, true);
var home = new UIViewController ("YouNibName", null); // default bundle
ctrl.PresentModalViewController (home, true);
}
}
注:我以前UIViewController
但你很可能已經爲你的NIB定義的類型。
爲什麼在地球上你用什麼看起來像普通的C方法?在UITableViewController中使用objective-c方法。 –
他的帖子被標記爲MonoTouch - 這是C#,而不是Obj-C – Jason
對不起,我不知道你可以編程爲iPhone而不使用Obj-C –