0
我已經通過我的代碼中分配的每一件東西,並給它一個-1的標籤,除了使用標籤系統的圖標。所以這是我的代碼:removeFromSuperview由於某種原因用UIImageView替換對象?
NSLog(@" 1: %@", (Icon *)[self viewWithTag:index]);
Icon *icon = (Icon *)[self viewWithTag:index];
CGRect frame = icon.frame;
[icon removeFromSuperview];
icon = nil;
Icon *icon2 = [[Icon alloc] init];
[icon2 makeIconStandardWithTag:(int)index];
icon2.frame = frame;
[self addSubview:icon2];
NSLog(@" 2: %@", (Icon *)[self viewWithTag:index]);
NSLog 1將對象返回爲圖標。 NSLog 2將對象返回爲UIImageView,儘管我爲每個UIImageView徹底搜索代碼並給它一個-1標籤。通過移動NSLog 2,我發現這行[icon removeFromSuperview];
是這裏的問題。如果不包括該行,則不會發生。但顯然我需要從超級視圖中刪除它,並且.alpha = 0
是太多的修補修復程序。
它只發生在索引0上。 – Andrew 2011-05-24 00:21:21
那麼這可能是你的問題。不應有任何理由必須使用標記值0.您是否可以嘗試使用較大的值。 – CharlieMezak 2011-05-24 00:22:16
我有一堆從數組中加載的對象,並且從0開始。我不想將其更改爲arrayindex + 1,然後在用戶按下它以找出時再次將其更改回來哪一個打開。 – Andrew 2011-05-24 00:28:52