我在视图控制器A中有这个字典的NSArray,然后当按下btn 1或btn 2时我将此segmentArray发送到viewController B然后我想将视图控制器B中的分段控制器设置为相应的btn被压了
NSArray *segmentArray = [NSArray arrayWithObjects:@{@"title":firstBtnString, @"number":@"0"}, @{@"title":twoBtnString, @"number":@"1"}, nil];
然后设置分段控制器我这样做
NSMutableArray *segmentArrayTitles = [[NSMutableArray alloc] init];
NSMutableArray *segmentArrayNumber = [[NSMutableArray alloc] init];
for (int i = 0; i < segmentArray.count; i++) {
[segmentArrayTitles addObject:segmentArray[i][@"title"]];
NSInteger value = [segmentArray[i] integerValue];
[segmentArrayNumber addObject:[NSNumber numberWithInteger:value]];
}
UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:segmentArrayTitles];
segmentedControl.frame = CGRectMake(20, 9, 280, 29);
[segmentedControl addTarget:self action:@selector(selectMeal:) forControlEvents: UIControlEventValueChanged];
[self.smallView addSubview:segmentedControl];
//Here I want to set the segmented controller to the correspoding value depending on which btn was pressed
我将如何做到这一点?
所以重申我想将分段控制器设置为按下的corseting btn。
感谢您的帮助。
修改
所以在ViewControllerA上,我在自定义tableview单元格中有2个按钮,我们将它们称为Btn 1和Btn 2.当按下任一按钮时,它将转到ViewController B.在视图控制器BI中,想要将分段控制器设置为标题视图控制器A中的按钮,并将其设置为按下的按钮。
这更有意义吗?
由于
答案 0 :(得分:0)
好的,根据您的编辑,这是一个新答案:
为视图控制器A提供一个名为index
的NSInteger属性,此代码为:
- (IBAction)buttonAAction:(id)sender {
[self setIndex:0];
}
- (IBAction)buttonBAction:(id)sender {
[self setIndex:1];
}
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
ChildViewController *controller = segue.destinationViewController;
[controller setSegment:self.index];
}
视图控制器B获取IBOutlet到其分段控件和此代码:
- (void)viewDidLoad {
[super viewDidLoad];
[self.segmentedControl setSelectedSegmentIndex:self.segment];
}
在故事板中,在视图控制器A中设置两个按钮,在视图控制器B中设置分段控件。然后进行两个分段:一个从按钮A到视图控制器B,一个从按钮B到视图控制器B.
希望这有帮助。