2013-06-25 21 views
0

我有一些已發佈的iOS應用程序,我試圖添加一些額外的功能,其中大部分將是相同的,所以我想使用相同的代碼。如何製作UIViewController庫類?

這些應用程序都會產生一些結果,用戶可能想要發送電子郵件,保存或導出爲.txt文件。

我想創建一個類,可以通過發送消息在每個應用程序內(而不是在同一時間)通過多個ViewController進行訪問。然後創建一個提供選項的操作表,然後處理選擇的任何選項。

我可以通過在每個應用程序的每個ViewController中添加代碼來完成所有這些工作,但我正在努力以正確的方式做事,即重用代碼!

因爲我的處理程序類必須處理UIActionSheet,MFMailComposeViewController,UIAlertView等,我認爲我認爲它必須是UIViewController的子類是正確的。它是否正確?

我需要讓它成爲代表嗎?

我想以正確的方式而不是剛纔的方式來做事情,所以任何幫助將不勝感激。

+3

好像你想要的是一個【類別】(http://developer.apple.com/library/ios/#documentation/cocoa /Conceptual/ProgrammingWithObjectiveC/CustomizingExistingClasses/CustomizingExistingClasses.html)UIViewController。 – geraldWilliam

+0

太棒了!這正是我所期待的。如果您將其添加爲答案,我會接受它。 – Leon

回答

1

您正在尋找的功能添加到現有類的解決方案是Objective-C categories

+0

我還有另一個快速問題,自從您上一篇文章以來,我一直試圖解決這個問題。如何將數據從clickedButtonAtIndex方法傳遞迴UIViewController? – Leon

+0

在您的類別中,在創建並顯示警報視圖,操作表等的方法的實施中,將該委託分配給自己。然後,在調用您的類別方法的視圖控制器中,重寫相應的委託回調,並執行適合該控制器如何處理給定操作的工作。如果您在分配委託時看到警告,則需要像自己一樣投射自己(id )self。 – geraldWilliam

相關問題