开发者

how to set image in uitable view

开发者 https://www.devze.com 2023-03-08 01:38 出处:网络
I download some images using an NSThread. When all the images are downloaded, I have to put them in cell.myimageview. Give me the solution for setting an image in a user-defined method.

I download some images using an NSThread. When all the images are downloaded, I have to put them in cell.myimageview. Give me the solution for setting an image in a user-defined method.

 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {


        static NSString *CellIdentifier = @"Cell";
        TableCell *cell = (TableCell *)[TableView dequeueReusableCellWithIdentifier:CellIdentifier];

        if (cell == nil) {

            cell = [[[TableCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];

        }


        NSString *bedsbaths=[NSString stringWithFormat:@"Beds:%@ Baths:%@",[[AppDeleget.statuses valueForKey:@"beds"] objectAtIndex:indexPath.row],[[AppDeleget.statuses valueForKey:@"baths"] objectAtIndex:indexPath.row]];
        cell.mlsno.text=[[AppDeleget.statuses valueForKey:@"mlsno"] objectAtIndex:indexPath.row];
        cell.price.text=[[AppDeleget.statuses valueForKey:@"price"] objectAtIndex:indexPath.row];
        cell.address.text=[[AppDeleget.statuses valueForKey:@"address"] objectAtIndex:indexPath.row];
        cell.bedsbaths.text=bedsbaths;
        cell.accessoryType=UITableViewCellAccessoryDetailDisclosureButton;
    return cell;

    }
    -(void)LoadImage
    {
        for(int x=0;x<[ListPhotos count];x++)
        {   
            NSData *imageData =[ListPhotos objectAtIndex:x]; 
            id path = imageData;
            NSURL *url = [NSURL URLWithString:path];
            NSLog(@"%@",url);
            NSData *data = [NSData dataWithContentsOfURL:url];
     开发者_运维技巧       UIImage *img = [[UIImage alloc] initWithData:data];
            [self performSelectorOnMainThread:@selector(downloadDone:) withObject:img waitUntilDone:NO];
        }

    }
    -(void)downloadDone:(UIImage*)img {

        // I have to set the cell here. How?        
        cell.myimageView.image=img
    }


In -(void)LoadImage

Store the img in a NSArray.

In - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath , code as

cell.myimageView.image=[imgArray objectAtIndex:indexPath.row];

Assign the delegate and datasource of tableview as,

-(void)downloadDone:(UIImage*)img {
       self.tableView.delegate=self;       
       self.tableView.datasource=self;         
    }
0

精彩评论

暂无评论...
验证码 换一张
取 消