2012-04-06 2 views
0

Я использую сегментированный элемент управления как своего рода систему переключателей для контактного приложения. Существует три кнопки, и возникает вопрос, является ли контакт существующим клиентом. Названия кнопок являются «Нет», «Да», «Другой Отдел»Я хочу сохранить UISegmentedControl.selectedSegmentIndex в Core Data - но как

Я абсолютно зеленый в развитии IOS, и это один тянет мои последние оставшиеся седые волосы из

Я хочу быть возможность сохранить значение selectedSegmentIndex в БД основных данных, так что я могу показать статус на следующей точки зрения правильно - но я действительно изо всех сил, чтобы получить мою голову вокруг, как сохранить значение:

if (self.existCustSelection.selectedSegmentIndex == 2) 
    [self.currentContact setExistCust:[existCustSelection stringWithFormat:@"%d", @"2"]]; 

- Это дает ошибку компиляции для

Нет видимых @interface для «UISegmentedControl» объявляет селектор «stringWithFormat:»

Я понимаю, что - моя проблема, я хочу, чтобы установить existCust вместо existCustSelection, но по какой-либо причине, я дон Получите этот параметр во время написания кода.

Мой чтение идет как это и не дает сообщение об ошибке или предупреждение:

if ([currentContact existCust] == @"2") { 
      self.existCustSelection.selectedSegmentIndex = 2; 
    } 

Будем надеяться, что есть отличное решение там? :)

Спасибо заранее, Микки

+1

Какое определение 'existCust'? Если это NSString, вы должны использовать '[self.currentContact setExistCust: @" 2 "];', но тогда оператор 'if' должен использовать' isEqualTo' вместо '=='. –

+1

Phillip - абсолютно правильно! :) Спасибо большое! – MickeyDK

ответ

1

ли existCust должен быть строкой? Если это только когда-либо хранит число, рассмотреть вопрос об использовании NSNumber:

NSNumber* custNumber = [NSNumber numberWithInteger:existCustSelection.selectedSegmentIndex]; 

Если вы определенно нужна строка, вот как конвертировать индекс в строку, используя stringWithFormat:

NSString* custString = [NSString stringWithFormat:@"%d", existCustSelection.selectedSegmentIndex]; 

Есть две проблемы с ваш призыв к stringWithFormat:

  1. stringWithFormat является метод класса NSString. Вы запрашиваете свой экземпляр UISegmentedControl, чтобы вернуть строку, и она не знает, как это сделать.
  2. Запросив %d в stringWithFormat, первым аргументом должно быть целое число, например 2, а не строка @"2".