В вашем коде нет ничего плохого, я попытался скопировать его в свой проект, и он работал хорошо, поэтому ваша ошибка может быть, вероятно, при проверке initVal ...
какой код вы используете, чтобы увидеть,initVal это ноль?и вы уверены, что когда / где вы проверяете initVal, этот var / oblect все еще виден?
попробуйте вставить это сразу после кода чтения:
NSLog(@"____text read in pref: %@", initVal);
это записывает это в моемокно консоли -> _ _текст читается в префе: 1
конечно, это строка NSString, я надеюсь, вы помните, что это не int или NSNumber, когдаВы проверяете это ...
Лука