2010-04-21 82 views
0

我有以下代码从上海华盈删除的UITextField不让它消失在屏幕上

// Breakpoint here 
[label removeFromSuperview]; 
[label release]; 
label = nil; 

步进通过它与调试器输出

(gdb) po [self subviews] 
<NSCFArray 0x476af70>(
<UIImageView: 0x47581a0; frame = (0 0; 232 81); opaque = NO; autoresize = W+H; userInteractionEnabled = NO; layer = <CALayer: 0x476b3d0>>, 
<UILabel: 0x4758870; frame = (15 11; 202 56); text = 'Test'; clipsToBounds = YES; autoresize = W+H; userInteractionEnabled = NO; layer = <CALayer: 0x476b590>> 
) 

(gdb) po label 
<UILabel: 0x4758870; frame = (15 11; 202 56); text = 'Test'; clipsToBounds = YES; autoresize = W+H; userInteractionEnabled = NO; layer = <CALayer: 0x476b590>> 
(gdb) n 
(gdb) n 
(gdb) n 
(gdb) po [self subviews] 
<NSCFArray 0x478c4e0>(
<UIImageView: 0x47581a0; frame = (0 0; 232 81); opaque = NO; autoresize = W+H; userInteractionEnabled = NO; layer = <CALayer: 0x476b3d0>> 
) 

然而,它仍然是可见的,它不会消失。即使我之后立即做[self setNeedsDisplay]

有没有人遇到过这个?这是SDK中的错误还是我错过了一些东西?

回答

0

事实证明,我在其他地方的代码中的一个错误导致多个相同的视图被创建在彼此的顶部,导致这种行为。