2011-08-02 49 views
0

我試圖隱藏一個分段控制器就像一個按鈕或標籤可以隱藏在XCode中。當觸摸上面的父級分段控制器時,它的目的是隱藏/顯示。此代碼將與按鈕或標籤一起工作:如何隱藏分段控制器?

mySegmContr.hidden = YES; 

但它只是不適用於分段控制器。你能幫我嗎?

+0

我不相信它有什麼不同。請檢查mySegmContr不是零,因爲這應該工作。 – NWCoder

+0

我該如何檢查它是否爲零?默認情況下它是否爲零?因爲我沒有在我的代碼的任何一行中聲明它爲零。感謝您的幫助,您看到我是新手 –

回答

0

如果你爲段控制器創建一個屬性,你可以用它做更多的事情,比如改變它的位置,調整它的大小,並希望你想隱藏它。

在您的.h文件中做到這一點

UISegmentedControl *mySegment; 
@property (nonatomic, retain) UISegmentedControl *mySegment; 

-(void) createMySegment; 

在您.m文件做到這一點

@synthesize mySegment; 


- (void) createMySegment  { 
if ([self mySegment] == nil) {  
    NSArray *buttons = [NSArray arrayWithObjects:@"One", @"Two", @"Three", nil]; 
    UISegmentedControl *segName = [[UISegmentedControl alloc] buttons]; 
    [self setMySegment:segName]; 
    [segName release]; 
    segName.frame = CGRectMake(110, 62, 120, 25);   
    segName.segmentedControlStyle = UISegmentedControlStyleBar; 
    segName.momentary = NO; 
    segName.selectedSegmentIndex = 0; 
    [segName addTarget:self 
       action:@selector(pickMethod:) 
     forControlEvents:UIControlEventValueChanged]; 
    [self.view addSubview:segName];    
} 

} 

注:帶「setMySegment」上述確保您使用一個大寫首字母分別爲M在「mySegment」中。 然後當你想隱藏它使用這個。不要去dealloc mySegment。

[[self mySegment] setHidden:YES]; 
2

我發現你可以使用一個簡單的UIView,在其中放置你想要隱藏的東西。 UIView然後可以隱藏與

myView.hidden = YES; 

仍然我發現沒有辦法直接隱藏分段控制。