Нужна помощь, чтобы добавить строку NSURL в массив - PullRequest
0 голосов
/ 23 декабря 2011

У меня есть массив данных, показывающий список элементов с информацией метки. В разделе СМИ я хочу вставить URL для запуска видео. Какова будет правильная процедура загрузки URL-адреса (с использованием NSURL) после строки @ "Play Video"? Затем, когда кнопка нажата, URL будет загружаться и отображать видео. URL отличается для каждого условия. Спасибо за любую помощь !!

- (void)createData {

NSMutableArray *playList = [[NSMutableArray alloc] init];
Play *play;
NSArray *media;

play = [[Play alloc] init];
play.title = @"Introduction";
play.part = @"Getting in the Game";
media = [[NSArray alloc] initWithObjects:@"Play Video", nil];
play.media = media;
[playList addObject:play];

play = [[Play alloc] init];
play.title = @"Rule #1";
play.part = @"Getting in the Game";
media = [[NSArray alloc] initWithObjects:@"Play Video", nil];
play.media = media;
[playList addObject:play];

play = [[Play alloc] init];
play.title = @"Rule #2";
play.part = @"Getting in the Game";
media = [[NSArray alloc] initWithObjects:@"Play Video", nil];
play.media = media;
[playList addObject:play];

Ответы [ 2 ]

0 голосов
/ 23 декабря 2011
Play *play;
NSArray *media;
NSURL *url;

play = [[Play alloc] init];
play.title = @"Introduction";
play.part = @"Getting in the Game";
//add this line
url = [NSURL urlWithString:@"http://abc.com/video.mp4"];
media = [[NSArray alloc] initWithObjects:@"Play Video",url, nil];
play.media = media;
[playList addObject:play];
0 голосов
/ 23 декабря 2011

Вы имеете в виду, как включить NSURL в качестве второго элемента в NSArray media?

media = [[NSArray alloc] initWithObjects:@"Play Video", myNsUrl, nil];

См. https://stackoverflow.com/a/1981508/436641 для некоторых предостережений и примера кода о том, как можно создать объект NSURL из строки URL.

Если у вас уже есть объект NSURL и вы хотите просто добавить строковое представление этого объекта, а не сам объект NSURL:

media = [[NSArray alloc] initWithObjects:@"Play Video", [myNsUrl absoluteString], nil];

Если у вас есть массив media, строку «Воспроизвести видео» можно получить как [media objectAtIndex:0], а URL-адрес можно получить как [media objectAtIndex:1].

С точки зрения ОО, возможно, в идеале, вы бы не использовали здесь массив, а скорее создали бы класс Media, для которого ваша программа создала бы экземпляр. Но вышеприведенный ответ на вопрос (как добавить NSURL в массив).

...