如何在 iOS 9 的一个视图控制器中处理两个分段控制器?
How to handle two Segmented Controllers in one View Controller in iOS 9?
在我的应用程序中,我想在一个视图控制器中处理两个分段控制器。
到目前为止,我是这样创建的,
- 为分段控制器创建了两个
IBAction
。
- segment1 = 0 和 segment = 1 工作正常。
- 段 2 = 0 不工作。
- segment2 = 1 工作正常。
我的问题是当用户点击 segment2 = 0 转到另一个视图时。
这是我的一些代码。
-(IBAction)segment1:(id)sender
{
UISegmentedControl *segmentedControl = (UISegmentedControl *) sender;
NSInteger selectedSegment1 = segmentedControl.selectedSegmentIndex;
if (selectedSegment1 == 0)
{
view2.hidden = YES;
view1.hidden = NO;
}
else if (selectedSegment1 == 1)
{
view2.hidden = NO;
}
}
-(IBAction)segment2:(id)sender
{
UISegmentedControl *segmentSelected2 = (UISegmentedControl *)sender;
NSUInteger selectedSegment2 = segmentSelected2.selectedSegmentIndex;
{
if (selectedSegment2 == 0)
{
UIStoryboard *recent = self.storyboard;
ViewController2 *recentVC = [recent instantiateViewControllerWithIdentifier:@"VC2"];
[self presentViewController:recentVC animated:YES completion:nil];
}
else if (selectedSegment2 == 1)
{
UIStoryboard *story = self.storyboard;
ViewController3 *VC = [story instantiateViewControllerWithIdentifier:@"VC3"];
[self presentViewController:VC animated:YES completion:nil];
}
}
}
这里似乎没什么问题。我唯一能看到的是你试图在 RecentJobs 已被选中时单击它。
尝试在您的视图中添加这行代码确实加载 <segmentControlOutletObject>.selectedSegmentIndex = -1
并尝试立即点击它。
或
Select故事板(属性检查器)中的分段控件,并确保控件的设置如下图所示
在我的应用程序中,我想在一个视图控制器中处理两个分段控制器。 到目前为止,我是这样创建的,
- 为分段控制器创建了两个
IBAction
。 - segment1 = 0 和 segment = 1 工作正常。
- 段 2 = 0 不工作。
- segment2 = 1 工作正常。
我的问题是当用户点击 segment2 = 0 转到另一个视图时。
这是我的一些代码。
-(IBAction)segment1:(id)sender
{
UISegmentedControl *segmentedControl = (UISegmentedControl *) sender;
NSInteger selectedSegment1 = segmentedControl.selectedSegmentIndex;
if (selectedSegment1 == 0)
{
view2.hidden = YES;
view1.hidden = NO;
}
else if (selectedSegment1 == 1)
{
view2.hidden = NO;
}
}
-(IBAction)segment2:(id)sender
{
UISegmentedControl *segmentSelected2 = (UISegmentedControl *)sender;
NSUInteger selectedSegment2 = segmentSelected2.selectedSegmentIndex;
{
if (selectedSegment2 == 0)
{
UIStoryboard *recent = self.storyboard;
ViewController2 *recentVC = [recent instantiateViewControllerWithIdentifier:@"VC2"];
[self presentViewController:recentVC animated:YES completion:nil];
}
else if (selectedSegment2 == 1)
{
UIStoryboard *story = self.storyboard;
ViewController3 *VC = [story instantiateViewControllerWithIdentifier:@"VC3"];
[self presentViewController:VC animated:YES completion:nil];
}
}
}
这里似乎没什么问题。我唯一能看到的是你试图在 RecentJobs 已被选中时单击它。
尝试在您的视图中添加这行代码确实加载 <segmentControlOutletObject>.selectedSegmentIndex = -1
并尝试立即点击它。
或
Select故事板(属性检查器)中的分段控件,并确保控件的设置如下图所示