Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 将AppDelegate用作单例_Ios_Objective C_Delegates_Singleton_Appdelegate - Fatal编程技术网

Ios 将AppDelegate用作单例

Ios 将AppDelegate用作单例,ios,objective-c,delegates,singleton,appdelegate,Ios,Objective C,Delegates,Singleton,Appdelegate,我正在使用我的AppDelegate处理一些音频文件。我已将其设置为AVAudioPlayer委托,因此我可以使用audioPlayerDidFinishPlaying等方法 我是这样做的: @interface AppDelegate : UIResponder <UIApplicationDelegate, AVAudioPlayerDelegate> 一切正常,但我得到以下警告: Assigning to 'APPDelegate *__strong' from incomp

我正在使用我的
AppDelegate
处理一些音频文件。我已将其设置为
AVAudioPlayer
委托,因此我可以使用
audioPlayerDidFinishPlaying
等方法

我是这样做的:

@interface AppDelegate : UIResponder <UIApplicationDelegate, AVAudioPlayerDelegate>
一切正常,但我得到以下警告:

Assigning to 'APPDelegate *__strong' from incompatible type 'id<UIApplicationDelegate>'
从不兼容的类型“id”分配给“APPDelegate*\uu strong”

您需要将其强制转换为
AppDelegate
的类型-

AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate];

您应该认真考虑是否真的希望您的AppDelegate做所有与成为应用程序的代理无关的事情。当你这样做的时候,它看起来总是一个好主意,并且会在以后创造很多工作。
AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate];