2009-12-08 46 views
0

我有一個內容1280 * 1280和25個相同大小的圖像加載在它的uiscrollview。當我滾動並結束時,我想知道當前出現在屏幕中心的圖像的身份。下面給出的是我用來將圖像加載到scrollView中的代碼。我怎麼弄出來的?獲取當前加載在屏幕中心的圖像的身份?

for (i = 0; i < 5; i++) { 
    if(j == 5) 
    { 
     tx = tx+1; 
     x=x+256; 
     ty = ty+5; 
     y = y-1280; 
    } 
    for (j = 0; j < 5; j++) { 
     imageView = [[UIImageView alloc] initWithImage:[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://stage.discoveritalia.it/tiles/%d/%d/%d.png",zoom,tx,ty]]]]]; 
     frame = [imageView frame]; 
     frame.origin.x = x; 
     frame.origin.y = y; 
     [imageView setFrame:frame]; 
     [myScrollView addSubview:imageView]; 

     ty = ty-1; 
     y = y+256; 

     [imageArray insertObject:imageView atIndex:i*5+j]; 
     [imageView release]; 
    } 
} 

如果我能回到URL,它會馬上解決我的問題。有沒有辦法做到這一點?

回答

0
  1. 在屏幕的中心計算CGPoint(取決於取向)由1280/5
  2. 鴻溝xy值並添加((1280/5)/2)確定瓦片i-j指數,該中心將重疊,沒有UIScrollView偏移
  3. 現在添加當前滾動視圖的偏移,以確定哪些瓦中心實際上重疊
+0

問題是,我知道這是瓷磚有但瓦特螞蟻取得它的名字,例如,http://stage.discoveritalia.it/tiles/10/6028/5078.png。我想把它變成一個字符串,然後解析它並得到最後兩個整數值。取決於它,我應該使用contentSize的中心加載下面的25個圖像。所有這些都是爲了完成UIScrollView。 – wolverine 2009-12-08 06:56:21

+0

嘿,我想通了。只需將所有網址或更具體的2個值存儲在我想要的數組中的url中即可。根據你的公式,我會得到一個x和y。 x * 5 + y會給我該數組的索引,這將給我的價值。非常感謝。 – wolverine 2009-12-08 07:13:15