Цель c: нераспознанный селектор отправлен на экземпляр - PullRequest
0 голосов
/ 07 февраля 2011

Я знаю, что этот вопрос постоянно повторяется, но я не смог решить мою проблему ни одним ответом, который нашел :(.

Я занимаюсь разработкой приложения и мне нужно получить аудиопоток. Я решил пойти с MPMoviePlayer, поэтому я сделал это:

#import "MediaPlayer/MediaPlayer.h"    
@interface FirstViewController : UIViewController <UITableViewDelegate, UITableViewDataSource> {
    ...     
    IBOutlet MPMoviePlayerViewController *theMovie;
    ...
}

...
@property (nonatomic, retain) MPMoviePlayerViewController *theMovie;

и в реализации я просто @ synthesize-d это.

И теперь, когда я выделяю его и пытаюсь получить доступ к его элементам или методам, я получаю эту чертову ошибку нераспознанный селектор, отправленный экземпляру в первой строке после инициализации:

self.theMovie = [[MPMoviePlayerViewController alloc] initWithContentURL:[NSURL URLWithString:@"http://netvarp.kringvarp.fo:554/radio/16/playlist.m3u8"]];
self.theMovie.moviePlayer.controlStyle = MPMovieControlStyleNone;       
    ...

(это метод viewDidLoad).

Я получаю сообщение об ошибке в этой строке:

self.theMovie.moviePlayer.controlStyle = MPMovieControlStyleNone;

или как я звоню после инициализации.

То же самое происходит, если я удаляю IBOutlet, если я вызываю его без 'self', если объявляю MPMoviePlayerController . Я не могу понять, что я делаю не так в течение 2 дней! Так стыдно :(

Любая помощь будет оценена.

Я забыл упомянуть, целевая ОС> 3.0. На симуляторе все работает нормально, но не на устройствах (iPhone 2G и iPhone 3G, оба с IOS 3.1.3)

Ответы [ 2 ]

5 голосов
/ 07 февраля 2011

Вам нужно будет опубликовать вывод аварии.unrecognized selector означает, что вы пытаетесь вызвать что-то, что не существует, например:

[self doSomethingSpecial];

, если doSomethingSpecial не существует в вашем контроллере, вы получите нераспознанный селектор, отправленныйк экземпляру

3 голосов
/ 07 февраля 2011

Как сказано в документации Apple: controlStyle доступен только в iOS 3.2 и более поздних версиях.

Я думаю, что это может быть вашей проблемой, так как этот метод недоступен на вашем устройстве 3.1.3, но я думаю, что он на симуляторе (4.2.1).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...