2012-12-03 76 views
2

我從列表視圖中的Web服務獲取圖像,但我想在網格 視圖中顯示它們。當我在列表視圖中顯示圖像時,在網格視圖中我該如何做到這一點?請幫助。這是我的代碼看起來如何: -如何在網格視圖中顯示來自Web服務的圖像

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

    NSString *[email protected]"CELL"; 
    UITableViewCell *cell=nil; 
    if (cell==nil) { 

     cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CELLIDENTIFIER] autorelease]; 
     CGRect imageFrame = CGRectMake(2, 8, 80, 60); 
     NSURL *url = [NSURL URLWithString:[arrayListG objectAtIndex: [indexPath row]]]; 
     NSData *data = [NSData dataWithContentsOfURL:url]; 
     UIImage *img = [[[UIImage alloc] initWithData:data] autorelease]; 
     UIImageView *customImage = [[[UIImageView alloc] initWithFrame:imageFrame] autorelease]; 

     customImage.image=img; 
     [cell.contentView addSubview:customImage]; 
    } 

    return cell; 
} 
+0

你的意思的TableView與行成其爲網格視圖看一下嗎? –

+0

是的..我的意思是相同的。 – Shivaay

+1

爲什麼不使用滾動視圖在網格中顯示圖像。你想如何連續顯示圖像? –

回答

1
Gridview = [[UIScrollView alloc] initWithFrame:CGRectMake(0,0, 320, 480)];//your frame   
Gridview.backgroundColor=[UIColor clearColor]; 
int row=0; 
int column=0; 
int rows=4; 
int cols=5; 
for (int i=0; i<rows*cols; i++) 
{ 
    if((row%4==0)&&(row>0)) 
    { 
     row=0; 
     column++; 
    } 
    else{ 
     row++; 
    } 
CGRect imageFrame = CGRectMake(row*80+10, column*60+10, 80, 60);//your imageview frame 
    NSURL *url = [NSURL URLWithString:[arrayListG objectAtIndex:i]]; 
    NSData *data = [NSData dataWithContentsOfURL:url]; 
    UIImage *img = [[[UIImage alloc] initWithData:data] autorelease]; 
    UIImageView *customImage = [[[UIImageView alloc] initWithFrame:imageFrame] autorelease]; 

    customImage.image=img; 
    [Gridview addSubView:customImage]; 

} 
[Gridview setContentSize:CGSizeMake(rows*90, cols*70)]; 

GridView的是你的滾動視圖添加它在IB或編程,你在我的情況我已經加入編程它的願望。根據您的要求設置內容大小和框架

0

請修改您的代碼如下。

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

    NSString *[email protected]"CELL"; 
    UITableViewCell *cell=nil; 
    if (cell==nil) { 
     cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CELLIDENTIFIER]; 

     CGRect imageFrame = CGRectMake(2, 8, 80, 60); 
     UIImageView *customImage = [[UIImageView alloc] initWithFrame:imageFrame]; 
     customImage.tag = 1; 
     [cell.contentView addSubview:customImage]; 
    } 
    UIImageView *customImage = (UIImageView *)[cell viewWithTag:1]; 

    NSURL *url = [NSURL URLWithString:[arrayListG objectAtIndex: [indexPath row]]]; 
    NSData *data = [NSData dataWithContentsOfURL:url]; 
    UIImage *img = [[UIImage alloc] initWithData:data]; 
    customImage.image =img; 

    return cell; 
} 
2

更好的使用這個真棒庫的GridView 如何實施和集成項目一切都是這個鏈接記錄。 check this out AQGridview

相關問題