我使用UISegmentControl'SegA','SegB'和'SegC'来观察视图
每个细分具有不同的视图,其中包含以编程方式添加的标签和文本字段。
每当我从SegA切换到SegB时,SegA的视图与SegB的视图重叠
答案 0 :(得分:0)
例如你有3个视图,分别有3个段控件,你需要在主视图Controller上添加这些视图作为子视图,并通过代码为它们设置框架,或者使用Interface Builder在ViewController上添加它们。
// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
[super viewDidLoad];
[self.view addSubView:view1];
[self.view addSubView:view2];
[self.view addSubView:view3];
[view1 setHidden:NO];
[view2 setHidden:YES];
[view3 setHidden:YES];
[mySegmentControl addTarget:self action:@selector(valuedChanged:) forControlEvents:UIControlEventValueChanged];
}
//segment value changed
-(IBAction)valuedChanged:(id)sender{
UISegmentedControl* tempSC=(UISegmentedControl *)sender;
if(tempSC.selectedSegmentIndex==0){
[view1 setHidden:NO];
[view2 setHidden:YES];
[view3 setHidden:YES];
}
else if(tempSC.selectedSegmentIndex==1){
[view1 setHidden:YES];
[view2 setHidden:NO];
[view3 setHidden:YES];
}
else if(tempSC.selectedSegmentIndex==2){
[view1 setHidden:YES];
[view2 setHidden:YES];
[view3 setHidden:NO];
}
}
提供view1,view2和view3是UIView类的实例。