Por que o Xcode mostra o aviso ao usar o protocolo Avaudioplayer Delegate Protocol no arquivo appdelegate.h?

StackOverflow https://stackoverflow.com/questions/1728384

Pergunta

//--------- myappdelegate.h

@interface MyAppDelegate : NSObject <UIApplicationDelegate, AVAudioPlayerDelegate> {

// --- Em algum outro arquivo .m, tentando acessar o token do dispositivo que reside em MyAppdelegate ----------

MyAppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];

// resulta em // aviso: type 'id' não está em conformidade com o protocolo 'avaudioplayerdelegate'

Foi útil?

Solução

É por causa de uma incompatibilidade de tipo: - A propriedade UIApplication.Delegate retorna uma instância do tipo ID - você está tentando lançar essa instância em MyAppDelegate, que implementa os protocolos uiapplicationDelegate e os protocolos AvaudioplayerDelegate. - Como o tipo retornado pela propriedade delegada não corresponde ao tipo appDelegate, você vê o aviso.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top