Search code examples
iosobjective-cuiscrollviewuiimageview

how to display images horizontal UIscrollView Programmatically


I did Get images for Url.and then display on SCrollView.My code like this

 NSMutableArray *al=[NSJSONSerialization JSONObjectWithData:webData options:0 error:nil];
    for (NSDictionary *diction in al)
    {


       NSString *geting =[diction valueForKey:@"dealimage"];
        NSLog(@"dealimage is %@",geting);

        NSData *getdata=[[NSData alloc]initWithData:[NSData dataFromBase64String:geting]];
        NSLog(@"good day %@",getdata);
        dataimages=[UIImage imageWithData:getdata];
        NSLog(@"dataimages %@",dataimages);

        [imagesarray addObject:dataimages];


     }

scrollView=[[UIScrollView alloc]init];

    scrollView.delegate = self;
    scrollView.scrollEnabled = YES;
    int scrollWidth = 100;
    scrollView.contentSize = CGSizeMake(scrollWidth,100);
    scrollView.frame=CGRectMake(0, 0, 320, 100);
    scrollView.backgroundColor=[UIColor yellowColor];

    [self.view addSubview:scrollView];

    int xOffset = 0;
    imageView.image = [UIImage imageNamed:[imagesName objectAtIndex:0]];

    for(int index=0; index < [imagesName count]; index++)
    {

        UIImageView *img = [[UIImageView alloc] init];
        img.bounds = CGRectMake(10, 10, 50, 50);
        img.frame = CGRectMake(5+xOffset, 0, 160, 110);
        NSLog(@"image: %@",[imagesName objectAtIndex:index]);
        img.image = [UIImage imageNamed:[imagesName objectAtIndex:index]];
        [images insertObject:img atIndex:index];
        scrollView.contentSize = CGSizeMake(scrollWidth+xOffset,110);

        [scrollView addSubview:[images objectAtIndex:index]];

        xOffset += 170;
    }

my Problem is ScrollView is Display but Images are not add So please tell me what wrong in my code

now i need like this image2

I know how to get images for Url.now i need display images Horizontal ScrollView So Please give me any idea about images .


Solution

  • your coding is Fine, but you are assign the value of [scrollView addSubview:[images objectAtIndex:index]];, this is not the fine one, I modify your code, as per your result Want

    UIScrollView  *scrollVie=[[UIScrollView alloc]init];
    
    scrollVie.delegate = self;
    scrollVie.scrollEnabled = YES;
    int scrollWidth = 100;
    //scrollVie.contentSize = CGSizeMake(scrollWidth,100);
    scrollVie.frame=CGRectMake(0, 51, self.view.frame.size.width, 100);
    scrollVie.backgroundColor=[UIColor redColor];
    
    
    
    
    int xOffset = 0;
    
    for(int index=0; index < [imagesarray count]; index++)
    {
    
        UIImageView *img = [[UIImageView alloc] initWithFrame:CGRectMake(xOffset,10,160, 110)];
        img.image = (UIImage*) [imagesarray objectAtIndex:index];
    
        [scrollVie addSubview:img];
    
        xOffset+=100;
    
    
    }
    
    [self.view addSubview:scrollVie];
    
    scrollVie.contentSize = CGSizeMake(scrollWidth+xOffset,110);