Ios 我能';当我试图记住分段控件的选择时,请不要使用分段控件
我有个问题,我有一个分段控件和两个按钮 这两个按钮将引导用户选择输入的表视图控制器 但当用户选择一个分段控件的段并转到tableview控制器时,选择将返回默认值Ios 我能';当我试图记住分段控件的选择时,请不要使用分段控件,ios,objective-c,uisegmentedcontrol,Ios,Objective C,Uisegmentedcontrol,我有个问题,我有一个分段控件和两个按钮 这两个按钮将引导用户选择输入的表视图控制器 但当用户选择一个分段控件的段并转到tableview控制器时,选择将返回默认值 - (IBAction)selectionOfTransportation:(id)sender { ran =((UISegmentedControl *)sender).selectedSegmentIndex; NSLog(@"%d",ran); switch (ran) { cas
- (IBAction)selectionOfTransportation:(id)sender {
ran =((UISegmentedControl *)sender).selectedSegmentIndex;
NSLog(@"%d",ran);
switch (ran) {
case 0://vapur
NSLog(@"0 ");
path = [[NSBundle mainBundle] pathForResource:@"vapurWeekdays" ofType:@"plist"];
arrayOfPlist = [[NSArray alloc] initWithContentsOfFile:path];
ran=0;
break;
case 1:
NSLog(@"1");
path = [[NSBundle mainBundle] pathForResource:@"denizotobus" ofType:@"plist"];
arrayOfPlist = [[NSArray alloc] initWithContentsOfFile:path];
ran=1;
break;
case 2:
break;
}
NSUserDefaults *settings = [NSUserDefaults standardUserDefaults];
[settings setInteger:ran forKey:@"MySelectedValueKey"];
}
这是我的密码
我将该值保存到NSUserDefaults并尝试更改选择,但似乎无法在任何位置使用segment.selectedSegmentIndex
起初,我将分段控件定义为一个操作,但我甚至尝试在.h文件中定义它
我如何使用它
或者更好的是,如何记住分段控件的选择请尝试此示例 xib中的第一个拖放段 在.h文件中
IBOutlet UISegmentedControl *mySegmentedControl;
在.m文件中
- (void)viewDidLoad
{
[super viewDidLoad];
[mySegmentedControl setSelectedSegmentIndex:0];
[mySegmentedControl addTarget:self action:@selector(segmentSwitch:)
forControlEvents:UIControlEventValueChanged];
}
- (IBAction)segmentSwitch:(id)sender
{
int ran=mySegmentedControl.selectedSegmentIndex;
**or**
int ran;
if(mySegmentedControl.selectedSegmentIndex == 0)
{
ran=0;
}
else if(mySegmentedControl.selectedSegmentIndex == 1)
{
ran=1;
}
else if(mySegmentedControl.selectedSegmentIndex == 2)
{
ran=2;
}
else if(mySegmentedControl.selectedSegmentIndex == 3)
{
ran=3;
}
}
您忘记同步userdefault。 如果不同步,则该值不同步
NSUserDefaults *settings = [NSUserDefaults standardUserDefaults];
[settings setInteger:ran forKey:@"MySelectedValueKey"];
//Add This Line
[settings synchronize];
这将同步userdefaults,您可以在其他控制器中使用默认情况下,这应该发生……您不需要告诉它要突出显示哪个选项卡。您是否在UISegmentedControl的UIControlEventValueChanged事件上调用此方法“SelectionofTransport”?不,从未听说过UIControlEventValueChanged事件。我不明白,你是说即使视图控件改变,分段控件也会默认记住选择吗@除非您的意思是分段控件位于推送到导航堆栈上的UIViewController中,否则,分段控件不应更改其选择。您的意思是在主页上有一个UIViewController,它有一个分段控件和2个按钮,您可以更改选定的分段选项卡,按其中一个按钮来推一个新的视图控制器,更改一些值,按“上一步”按钮,分段控件将重置其以前选择的选项卡?