2011-02-07 114 views
0

我正在修改別人的代碼,並嘗試使用ViewController,但它目前是一個NSObject。所以,下面我在我的代碼添加newDelegateNSObject ModalView和委託

@interface myAppDelegate : NSObject <UITableviewDelegate, newDelegate> 

我嘗試bringup一個modalview與

[self presentModalViewController:newModalView animated:YES]; 

我得到錯誤信息'myAppDelegate' may not respond to '-presentModalViewController:animated:'這是不夠公平,它是一個NSObject。有人可以幫助我一個可能的方法嗎?

回答

0

如果有人用NSObject代碼作爲UIViewController寫了代碼,那麼存在很多問題。 「修改別人的代碼」對我來說意味着「我是新的供應商,因爲這位老人通過對客戶說謊並說SAYING他們可以做iPhone開發工作而搞砸了這麼糟糕。」也許回到客戶端說「我們需要從頭開始重新開發,這是垃圾」? :)

至於手頭的問題 - 應用程序代表是NSObject - 所以部分看起來是正確的。但是,應用程序代理通常不應該是UITableViewDelegate。你在應用程序委託中有一個window屬性和一個rootViewController屬性,最後的調用appDidFinishLaunchingWithOptions:將實例化視圖控制器並將其加載到窗口中。該視圖控制器然後將處理任何視圖(在這種情況下可能是UITableViewDelegate)。

presentModalViewController:代碼是內置於UIViewController的,因此您無法直接從應用程序代理工作。