0

我有一个从 XML 数据加载视频文件的 NSArray。当您按下 Array 项时,它会加载一个带有按钮的视图,该按钮应加载 NSString url。这是我正在使用的代码。

-(IBAction)playMovie:(id)sender
    {
        RSSItem* item = (RSSItem*)self.description;
        NSURL *movieUrl = [NSURL URLWithString: item];
        MPMoviePlayerController *moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:movieUrl];
        [self.view addSubview:moviePlayerController.view];
        moviePlayerController.fullscreen = YES;
        [moviePlayerController play]; 
    }

我收到警告“不兼容的指针类型将'RSSItem *_strong'发送到'NSString *'类型的参数

我已经尝试了所有我能想到的将字符串转换为字符串并让它工作的方法。如果这个问题对于论坛来说太具体或太基本,请告诉我。

谢谢!

4

2 回答 2

1

NSURL URLWithString:方法需要一个类型为 的参数NSString。但是您正在传递一些未知RSSItem对象。你需要通过一个NSString.

你为什么要投射self.description到一个RSSItem?该description方法是标准方法NSObject。它返回一个NSString.

如果您已将自己的description方法添加到您的类中,您真的应该重命名它。该description方法已经具有特定目的。

如果您使用的是标准description方法,那么这是一个不好的用途。该description方法不应该用于除调试之外的任何事情。

于 2013-03-21T03:03:47.777 回答
1

这:

RSSItem* item = (RSSItem*)self.description;

应该是这样的:

NSString* item = self.description;

代码中的上述行令人费解和麻烦。您为什么要尝试将description(以 anNSString开头)转换为 an RSSItem

于 2013-03-21T03:03:57.847 回答