ABMutableMultiValue
ABMultiValue
и ABMutableMultiValue
классы используются для представления свойств, которые могли бы иметь многократные значения. Каждое значение в списке мультизначения должно иметь тот же тип и должно было предопределить связанное или определяемую пользователем метку и уникальный идентификатор. Метки, однако, не должны быть уникальными. Например, у Вас могут быть многократные Домашние телефоны. Когда метка не предоставлена, каждый объект мультизначения может иметь основной идентификатор — используемый в качестве значения по умолчанию. Например, запись лица может иметь многократные адреса с метками Домой и Работой, где Работа определяется как основное значение. Экземпляры ABMutableMultiValue
являются непостоянными, видят ABMultiValue
для дополнительных методов, получающих доступ к содержанию списка мультизначения.
ABMultiValue
класс “бесплатный соединенный мостом” с его процедурным дубликатом непрозрачного типа C. Это означает что ABMultiValueRef
тип является взаимозаменяемым в вызовах функции или вызовах метода с экземплярами ABMultiValue
класс.
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSCopying
-
NSFastEnumeration
-
NSMutableCopying
-
NSObjectProtocol
-
Печатаемый
-
NSCopying
-
NSFastEnumeration
-
NSMutableCopying
-
NSObject
Оператор импорта
Swift
import AddressBook
Objective C
@import AddressBook;
Доступность
Доступный в OS X v10.2 и позже.
-
Добавляют значение и его метка к списку мультизначения.
Объявление
Параметры
value
Значение для добавления.
label
Метка для соединения со значением.
Возвращаемое значение
Новый идентификатор, если
value
добавляется успешно; иначе,nil
.Обсуждение
value
параметр должен иметь корректный тип. Например, если получатель является значением для свойства типаkABMultiStringProperty
, тогдаvalue
потребности быть объектом NSString. Посмотрите Типы Свойства для списка поддерживаемых типов в списке мультизначения (см. описанияkABMulti...
константы). Если любойvalue
илиlabel
параметрnil
, этот метод повышает исключение.Этот метод не выполняет проверки типа и позволит Вам добавить значение, тип которого не соответствует типы других значений в списке. Однако, при попытке использовать список мультизначения, значения которого не являются всем тем же типом, другими методами, такой как
ABRecord
setValue:forProperty:
метод, возвратитсяNO
false
илиkABErrorInProperty
.Оператор импорта
Objective C
@import AddressBook;
Swift
import AddressBook
Доступность
Доступный в OS X v10.2 и позже.
См. также
-
Вставляет значение и его метку в данном индексе в списке мультизначения.
Объявление
Swift
func insertValue(_
value
: AnyObject!, withLabellabel
: String!, atIndexindex
: Int) -> String!Objective C
- (NSString *)insertValue:(id)
value
withLabel:(NSString *)label
atIndex:(NSUInteger)index
Параметры
value
Значение для добавления.
label
Метка для соединения со значением.
index
Индекс, где будет вставлено значение.
Возвращаемое значение
Идентификатор вставленного значения и метки, если они добавляются успешно; иначе,
nil
.Обсуждение
Если или значение или метка
nil
или если индекс выходит за пределы, этот метод повышает исключениеЭтот метод не выполняет проверки типа и позволит Вам добавить значение, тип которого не соответствует типы других значений в списке. Однако, при попытке использовать список мультизначения, значения которого не являются всем тем же типом, другими методами, такой как
ABRecord
setValue:forProperty:
метод, возвратитсяNO
false
илиkABErrorInProperty
.Оператор импорта
Objective C
@import AddressBook;
Swift
import AddressBook
Доступность
Доступный в OS X v10.2 и позже.
См. также
-
Заменяет метку в данном индексе.
Объявление
Objective C
- (BOOL)replaceLabelAtIndex:(NSUInteger)
index
withLabel:(NSString *)label
Параметры
index
Индекс метки, которая будет заменена.
label
Новая метка.
Возвращаемое значение
YES
true
если успешный; иначе,NO
false
.Обсуждение
Если метка
nil
или если индекс выходит за пределы, этот метод повышает исключение.Оператор импорта
Objective C
@import AddressBook;
Swift
import AddressBook
Доступность
Доступный в OS X v10.2 и позже.
См. также
-
Заменяет значение в данном индексе.
Объявление
Swift
func replaceValueAtIndex(_
index
: Int, withValuevalue
: AnyObject!) -> BoolObjective C
- (BOOL)replaceValueAtIndex:(NSUInteger)
index
withValue:(id)value
Параметры
index
Индекс значения, которое будет заменено.
value
Новое значение.
Возвращаемое значение
YES
true
если успешный; иначеNO
false
.Обсуждение
Если значение
nil
или если индекс выходит за пределы, этот метод повышает исключение.Оператор импорта
Objective C
@import AddressBook;
Swift
import AddressBook
Доступность
Доступный в OS X v10.2 и позже.
См. также
-
Удаляет значение и метку в данном индексе.
Объявление
Swift
func removeValueAndLabelAtIndex(_
index
: Int) -> BoolObjective C
- (BOOL)removeValueAndLabelAtIndex:(NSUInteger)
index
Параметры
index
Индекс пары метки значения, которая будет удалена.
Возвращаемое значение
YES
true
если успешный; иначеNO
false
.Обсуждение
Если индекс выходит за пределы, этот метод повышает исключение.
Оператор импорта
Objective C
@import AddressBook;
Swift
import AddressBook
Доступность
Доступный в OS X v10.2 и позже.
-
Устанавливает основное значение, чтобы быть значением для данного идентификатора.
Объявление
Swift
func setPrimaryIdentifier(_
identifier
: String!) -> BoolObjective C
- (BOOL)setPrimaryIdentifier:(NSString *)
identifier
Параметры
identifier
Идентификатор, значение которого будет использоваться в качестве основного значения для свойства мультизначения.
Возвращаемое значение
YES
true
если успешный; иначеNO
false
.Обсуждение
Если идентификатор
nil
, этот метод повышает исключение. ИспользуйтеidentifierAtIndex:
метод для получения идентификатора, данного индекс.Оператор импорта
Objective C
@import AddressBook;
Swift
import AddressBook
Доступность
Доступный в OS X v10.2 и позже.
См. также
– primaryIdentifier
(ABMultiValue)