Xcode和obj-c中的初學者問題。iOS 6.0中的MessageUI問題
在我的項目中,我有一個帶有IBAction的按鈕,可以發送短信息而不需要使用我的應用程序(MessageUI鏈接到項目)。在iOS 5代碼運行良好,但是當我在最新的Xcode中打開相同的項目以重新編譯iOS 6時,我收到了以下警告:http://uaimage.com/image/10e31752 在iOS 6中使用MessageUI時會發生什麼變化?
感謝您的關注!
Xcode和obj-c中的初學者問題。iOS 6.0中的MessageUI問題
在我的項目中,我有一個帶有IBAction的按鈕,可以發送短信息而不需要使用我的應用程序(MessageUI鏈接到項目)。在iOS 5代碼運行良好,但是當我在最新的Xcode中打開相同的項目以重新編譯iOS 6時,我收到了以下警告:http://uaimage.com/image/10e31752 在iOS 6中使用MessageUI時會發生什麼變化?
感謝您的關注!
看這個圖片:
http://uaimage.com/image/e71f051f
你必須使用MFMessageComposeViewControllerDelegate和不 MFMailComposeViewControllerDelegate
將MFMessageComposeViewControllerDelegate
添加到您的標題(.h)文件。
例子:UIViewController< MFMessageComposeViewControllerDelegate>
我的ViewController符合MFMessageComposeViewController,並且MessageUI被添加到項目文件夾中。一切工作正常在iOS 5與相同的代碼。 – Alex
嗯...東西很奇怪就這樣發生了。
我的項目結構如下:
YourProject (Root of the project with Xcode Project Icon)
/YourProject (Folder)
/Group X (Nested Folder)
/SomeViewController.h
/Group Y (Nested Folder)
/Group Y1 (Nested Folder)
/OtherViewController.h
/Group Y2 (Another Nested Folder)
/YetAnotherViewController.h
類SomeViewController,使用MFMessageComposeViewControllerDelegate和MFMailComposeViewControllerDelegate工作得很好:
...
@interface SomeViewController : UIViewController <MFMessageComposeViewControllerDelegate, MFMailComposeViewControllerDelegate> {}
...
的類OtherViewController和YetAnotherViewController,使用相同的MFMessageComposeViewControllerDelegate和MFMailComposeViewControllerDelegate贏得」編譯!
錯誤是:
和/或
所以我檢查並重新檢查導入,聲明所有的方法和我的ViewControllers是相同的,唯一的區別是他們的名字是數據對象。
最後,解決方案真的很愚蠢!我通過將嵌套文件夾移動一層來解決了這個問題。一切都很好地編譯!
顯然,導入庫(將它們添加到項目中時)未達到子組中的文件!我猜這是XCode和iOS 6的一個錯誤,但我得到了同樣的錯誤。
由於這些組是虛擬文件夾(它們不在文件系統中),只是在項目結構中,這實際上很奇怪。
我希望節省時間和頭痛的人!
非常感謝您的評論,希望它能幫助別人! – Alex
自從將iPhone 4更新至IO6後,我遇到同樣的問題。 雖然沒有警告。 它似乎是由線程模型中的更改引起的。 – DevNull
我們可以看到接口聲明嗎? –
當然! http://uaimage.com/image/e71f051f由於警告,註釋掉了協議聲明 – Alex