Я не совсем уверен, но, возможно, он сохраняет ваши значения по умолчанию, и ошибка находится в другом месте. Я думаю о вашем методе "openView":
- (IBAction)openview{
NSString *var = [[NSUserDefaults standardUserDefaults] objectForKey:@"choose"];
if (var == @"choose1"){
[self pushViewController:view1 animated:YES];}
/** you are comparing to "choose1" here as well. **/
else if (var == @"choose1"){
[self pushViewController:view2 animated:YES];
}
Другая возможность может заключаться в том, что вы никогда не вызываете методы choose1 () или choose2 ()?
Это объясняет, почему значение никогда не изменяется.
Несмотря на эти 2 возможности, я думаю, что нет ошибки в коде, который вы используете для изменения пользовательских настроек.
Надеюсь, это поможет.
С уважением,
Gjallar