NSArray
画像があります:
2012-08-15 10:12:39.687 test[4200:11103] (
"http://192.168.1.165/Images/Demo/1.jpg",
"http://192.168.1.165/Images/Demo/0.jpg",
"http://192.168.1.165/Images/Demo/0.jpg",
"http://192.168.1.165/Images/Demo/2.jpg",
"http://192.168.1.165/Images/Demo/2.jpg",
"http://192.168.1.165/Images/Demo/2.jpg",
"http://192.168.1.165/Images/Demo/2.jpg",
"http://192.168.1.165/Images/Demo/1.jpg",
"http://192.168.1.165/Images/Demo/1.jpg",
"http://192.168.1.165/Images/Demo/1.jpg" )
コード .m:
dispatch_async(htvque, ^{
NSData* data = [NSData dataWithContentsOfURL: tophotfilm];
NSError* error;
json = [NSJSONSerialization JSONObjectWithData:data
options:kNilOptions
error:&error];
NSDictionary *list = [json objectForKey:@"List"];
NSMutableArray *arrPoster =[[NSMutableArray alloc]init];
for(NSString *po in list)
{
NSString *poster = [po valueForKey:@"Poster"];
[arrPoster addObject:poster];
}
myArray = [NSArray arrayWithArray:arrPoster];
NSArray *colors = [[NSArray alloc] initWithObjects:[UIColor redColor],
[UIColor greenColor], [UIColor magentaColor],
[UIColor blueColor], [UIColor orangeColor],
[UIColor brownColor], [UIColor grayColor], nil];
//NSLog(@"%@",colors);
NSLog(@"%@",myArray);
for (int i = 0; i < myArray.count; i++) {
//NSLog(@"%@",myArray.count);
NSString *imageName = [NSString stringWithFormat:@"%@", i];
UIImage *image = [UIImage imageNamed:imageName];
UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
CGRect rect = imageView.frame;
rect.origin.x = self.scrollView.frame.size.width * i;
rect.origin.y = 0;
rect.size = scrollView.frame.size;
[self.scrollView addSubview:imageView];
}
scrollView.pagingEnabled = YES;
scrollView.showsHorizontalScrollIndicator = NO;
scrollView.showsVerticalScrollIndicator = NO;
scrollView.contentSize = CGSizeMake(scrollView.frame.size.width *
myArray.count,scrollView.frame.size.height);
pageControl.currentPage = 0;
pageControl.numberOfPages = myArray.count;
[super viewDidLoad];
});
NSArray の色では問題なく動作しますが、NSArray の画像にエラーがあります。
scrollview は listimage を表示しません。最初の画像を表示します。理由は誰にもわかります...
dispatch_async(dispatch_get_main_queue(), ^{ for (int i = 0; i < myArray.count; i++) { //NSString *imageName = [NSString stringWithFormat:@"%@",[myArray objectAtIndex:i]];
NSURL *urlImage = [NSURL URLWithString:[NSString stringWithFormat:@"%@",[myArray objectAtIndex:i]]]; //NSLog(@"%@",urlImage); UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfURL:urlImage]]; UIImageView *imageView = [[UIImageView alloc] initWithImage:image]; CGRect rect = imageView.frame; rect.size.height = imgHeight; rect.size.width = imgWidth; imageView.frame = rect; imageView.tag = i; //rect.size = scrollView.frame.size; [scrollView addSubview:imageView]; } scrollView.pagingEnabled = YES; scrollView.showsHorizontalScrollIndicator = NO; scrollView.showsVerticalScrollIndicator = NO; scrollView.contentSize = CGSizeMake(scrollView.frame.size.width *
myArray.count,scrollView.frame.size.height); pageControl.currentPage = 0; pageControl.numberOfPages = myArray.count; });