나는 UIImageView
입니다. 이미지를 가져 와서 표시하도록 설정할 수 없습니다. viewDidLoad
UIImageView에 이미지를 설정할 수 없습니다.
albumContainer = [[UIImageView alloc]initWithFrame:CGRectMake(112, 7, 97, 97)];
[self.view addSubview:albumContainer];
방법에
은
PlayerViewController
-(void)viewDidLoad{
[super viewDidLoad];
playerView = [[AlbumViewController alloc]initWithNibName:@"AlbumViewController" bundle:nil];
}
-(void)playMusic{
playerView.url = [NSURL URLWithString:imagePathForm];
playerView.songData = receivedData;
[loadingSong stopAnimating];
[playerView play];
}
AlbumViewCont 다른 클래스
NSLog(@"URL:%@",url);
//URL is defined by different class
//URL is http://www.....882546328.jpg (I abbreviated it, but it is a valid url)
NSData *imageData = [NSData dataWithContentsOfURL:url];
NSLog(@"URL LENGTH:%d",[imageData length]);
// URL LENGTH:90158
UIImage *tempImage = [UIImage imageWithData:imageData];
[albumContainer setImage:tempImage];
전체 코드에서 호출되는 롤러
- (void)viewDidLoad
{
[super viewDidLoad];
albumContainer = [[UIImageView alloc]initWithFrame:CGRectMake(112, 7, 97, 97)];
[self.view addSubview:albumContainer];
url = [NSURL URLWithString:@""];
}
-(void)play{
NSLog(@"SONGDATA:%d",[songData length]);
player = [[AVAudioPlayer alloc] initWithData:songData error: nil];
[player stop];
player.delegate = self;
player.numberOfLoops = 0;
player.volume = 0.5;
[player prepareToPlay];
[player play];
NSLog(@"URL:%@",url);
NSData *imageData = [NSData dataWithContentsOfURL:url];
NSLog(@"URL LENGTH:%d",[imageData length]);
UIImage *tempImage = [UIImage imageWithData:imageData];
[albumContainer setImage:tempImage];
}
내가 확인하고 albumContainer 당신이 이미지를 설정하기 전에 컨트롤러의 뷰가로드되었는지 확인 했 NULL
"다른 클래스에서 호출되는 메서드"의 의미를 설명 할 수 있습니까? 'albumContainer'를 사용하면이 메소드가 같은 클래스 내에서 호출된다는 것을 의미합니다. 사실입니까? –
내가 게시 한 코드는 albumViewController 클래스에서 가져온 것입니다. 다른 클래스 playerViewController에서 위의 메서드 인 [album setImage]를 사용하고 있습니다. – Matt
두 번째 코드 스 니펫의 albumContainer는 어떻게됩니까? 어떻게 정의됩니까? 중독성있는 정보를 추가하기 위해 코드에 주석을 달거나 편집 해보십시오. 고맙습니다. –