2012-06-13 95 views
1

我有一個叫做BackgroundText的UIView子類來繪製一些文本。如何在drawInRect之後刪除文本?

-(void) drawRect:(CGRect)rect 
{ 
    [@"synchronized." drawInRect:CGRectMake(0, 29, 320, 60) withFont:bigFont lineBreakMode:UILineBreakModeTailTruncation alignment:UITextAlignmentRight]; 
} 

-

backgroundText = [[MMRoomBackgroundText alloc] initWithFrame:CGRectMake (0, 142 + 44, 320, 80)]; 
[self.view addSubview:backgroundText]; 

我希望[backgroundText removeFromSuperview];可以刪除從屏幕上這些文字,但它不能正常工作。

謝謝。

回答

0

您需要致電setNeedsDisplay查看和檢查。

+0

你的意思是在我調用'[backgroundText removeFromSuperview];'? 試過但失敗。 – caiguo

-1

我希望這會幫助你。

這裏LoadingBG是我的看法LoadingText是我的標籤而且我把在標籤文本,並添加標籤到視圖之後,我刪除照片來自的SuperView當我不需要文本。

添加文字:

UIView * LoadingBG = [UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 460); 
UILabel *LoadingText = [[[UILabel alloc] initWithFrame:CGRectMake(0, 0, 100, 50)] autorelease]; 
LoadingText.text = @"Loading..."; 
LoadingText.backgroundColor = [UIColor clearColor]; 
[LoadingBG addSubview:LoadingText]; 

對於刪除文本:

[LoadingBG removeFromSuperview]; 

,在這裏我使用了固定大小查看和標籤。你可以使用你想要的作爲一個框架。

+0

這可能是因爲我每次需要時都會初始化一個新的backgroundText。 把init代碼放在viewDidLoad之後,它就起作用了。 謝謝Bapu和Abdullah – caiguo

相關問題