【发布时间】:2014-09-27 19:43:34
【问题描述】:
我正在开发自己的应用程序,该应用程序的 iPhone 版本已经在 Apple AppStore 上,现在我正在开发 iPad 版本。功能(当然)几乎相同,但用户界面不同。 iPhone版本运行良好。
现在我在 XCode 中遇到了一个奇怪的错误。
我的应用使用 SoundCloud API 流式传输一些音乐并浏览不同用户的歌曲。在 iPhone 上,我可以显示小缩略图,因为 ImageView 非常小(~40x40px)。 但在我的 iPad 上,我需要更大的图像,所以我必须获取更大的艺术品图像和用户头像。
为此,我有两种不同的方法。第一个获取更大的 Artwork Image,第二个获取更大的用户头像(个人资料图片)。
- (NSURL *)bigCoverURLforTrack:(Track *)track {
if(track.coverURL) {
NSURL* coverURL = track.coverURL;
NSString* coverLarge = coverURL.absoluteString;
NSString* coverBig = [coverLarge stringByReplacingOccurrencesOfString:@"-large" withString:@"-t500x500"];
return [[NSURL alloc] initWithString:coverBig];
}
else return [[NSURL alloc] init];
}
- (NSURL*)bigAvatarURLforUser:(User*)user {
if(user.avatarURL) {
NSURL* avatarURL = user.avatarURL;
NSString* avatarLarge = avatarURL.absoluteString;
NSString* avatarBig = [avatarLarge stringByReplacingOccurrencesOfString:@"-large" withString:@"-t500x500"];
return [[NSURL alloc] initWithString:avatarBig];
}
else return [[NSURL alloc] init];
}
第一种方法运行良好,但第二种方法每次都崩溃。
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFString absoluteString]: unrecognized selector sent to instance
我做错了什么?
【问题讨论】:
标签: ios objective-c nsurl