Как вы можете скрыть сегментированный контроллер? - PullRequest
0 голосов
/ 02 августа 2011

Я пытался скрыть сегментированный контроллер так же, как кнопку или метку можно скрыть в XCode. Он предназначен для скрытия / отображения при касании вышестоящего сегментированного контроллера выше. Этот код будет работать с кнопками или метками:

mySegmContr.hidden = YES;

Но это не будет работать для сегментированных контроллеров. Вы можете мне помочь?

Ответы [ 2 ]

2 голосов
/ 04 августа 2011

Я понял, что вы можете использовать простой UIView, в который вы помещаете вещи, которые хотите скрыть. UIView можно затем скрыть с помощью

myView.hidden = YES;

все же я не нашел способа скрыть сегментированный элемент управления напрямую.

0 голосов
/ 06 августа 2012

Если вы создаете свойство для контроллера сегмента, вы можете делать с ним больше, например, изменять его местоположение, изменять его размер и хотеть скрыть его.

В своем файле .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».Затем, когда вы хотите скрыть это, используйте это.Не для того, чтобы иметь дело с mySegment.

[[self mySegment] setHidden:YES];
...