GKMatchmakerViewController
GKMatchmakerViewController
класс используется для представления стандартного пользовательского интерфейса проигрывателю. Этот интерфейс позволяет им приглашать друзей для соответствия или позволять Игровому Центру заполнять остающиеся проигрыватели, необходимые для соответствия.
Для показа экрана matchmaking инициализируйте новое GKMatchmakerViewController
объект и набор делегат. Сконфигурируйте контроллер представления другие свойства, чтобы соответствовать Ваши определенные потребности, затем представить новый контроллер представления. и ожидайте делегата, чтобы быть вызванными. Когда процесс matchmaking завершается или отменяется, делегат контроллера представления уведомляется. В любой ситуации Вы отклоняете контроллер представления.
Если пользователь создает соответствие, Ваша игра инициализирует контроллер представления антрепренера путем создания a GKMatchRequest
объект, описывающий желаемое соответствие. Этот запрос соответствия передается initWithMatchRequest:
метод. Когда этот контроллер представления выведен на экран, местный игрок может пригласить другие проигрыватели в соответствие.
Если Ваша игра получает приглашение от другого проигрывателя, она получает a GKInvite
объект, представляющий соответствие проигрыватель, был приглашен в. Вы инициализируете контроллер представления антрепренера путем передачи GKInvite
объект, полученный от Гэйма Кита к initWithInvite:
метод. Когда этот контроллер представления представлен проигрывателю, проигрыватель присоединяется к существующему соответствию, но не позволяется пригласить других к соответствию.
На iOS Вы представляете и отклоняете контроллер представления от другого контроллера представления в Вашей игре, с помощью методов, предоставленных UIViewController
класс. На OS X Вы используете GKDialogController
класс, чтобы представить и отклонить контроллер представления.
Наследование
-
NSObject
-
NSResponder
-
NSViewController
-
GKMatchmakerViewController
-
NSObject
-
NSResponder
-
NSViewController
-
GKMatchmakerViewController
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
GKViewController
-
Hashable
-
NSCoding
-
NSExtensionRequestHandling
-
NSObjectProtocol
-
NSSeguePerforming
-
NSUserInterfaceItemIdentification
-
Печатаемый
-
GKViewController
-
NSCoding
-
NSObject
-
NSSeguePerforming
-
NSUserInterfaceItemIdentification
Оператор импорта
Swift
import GameKit
Objective C
@import GameKit;
Доступность
Доступный в OS X v10.8 и позже.
-
Инициализирует контроллер представления антрепренера для ответа на приглашение, полученное от другого проигрывателя.
Объявление
Swift
init!(invite
invite
: GKInvite!)Objective C
- (id)initWithInvite:(GKInvite *)
invite
Параметры
invite
Приглашение получено от другого проигрывателя.
Возвращаемое значение
Инициализированный антрепренер просматривает объект контроллера. Если ошибка произошла,
NULL
возвращается.Обсуждение
Пользователю разрешают присоединиться к соответствию, что в пользователя пригласили, но не разрешают пригласить других к соответствию.
Оператор импорта
Objective C
@import GameKit;
Swift
import GameKit
Доступность
Доступный в OS X v10.8 и позже.
-
Инициализирует контроллер представления антрепренера для создания нового соответствия.
Объявление
Swift
init!(matchRequest
request
: GKMatchRequest!)Objective C
- (id)initWithMatchRequest:(GKMatchRequest *)
request
Параметры
request
Запрос, содержащий характеристики для желаемого соответствия.
Возвращаемое значение
Инициализированный антрепренер просматривает объект контроллера. Если ошибка произошла,
NULL
возвращается.Обсуждение
Ваша игра использует
initWithMatchRequest:
метод, когда это хочет, чтобы локальный пользователь создал новое соответствие.Оператор импорта
Objective C
@import GameKit;
Swift
import GameKit
Доступность
Доступный в OS X v10.8 и позже.
-
matchmakerDelegate matchmakerDelegate
СвойствоДелегат к антрепренеру просматривает контроллер.
Объявление
Swift
unowned(unsafe) var matchmakerDelegate: GKMatchmakerViewControllerDelegate!
Objective C
@property(nonatomic, assign) id< GKMatchmakerViewControllerDelegate > matchmakerDelegate
Обсуждение
Когда соответствие создается, делегат обязан получать обратную связь.
Оператор импорта
Objective C
@import GameKit;
Swift
import GameKit
Доступность
Доступный в OS X v10.8 и позже.
-
Сообщение приглашения по умолчанию раньше инициализировало приглашение.
Оператор осуждения
Установите сообщение по запросу соответствия вместо этого.
Объявление
Swift
var defaultInvitationMessage: String!
Objective C
@property(nonatomic, copy) NSString *defaultInvitationMessage
Обсуждение
Когда местный игрок создает новое приглашение, Ваша игра устанавливает это свойство для изменения текста приглашения по умолчанию, выведенного на экран. Местный игрок может отредактировать текст прежде, чем отправить приглашение.
Оператор импорта
Objective C
@import GameKit;
Swift
import GameKit
Доступность
Доступный в OS X v10.8 и позже.
Осуждаемый в OS X v10.10.
-
размещенный размещенный
СвойствоБулево значение, указывающее, размещается ли соответствие или одноранговое.
Объявление
Swift
var hosted: Bool
Objective C
@property(nonatomic, assign, getter=isHosted) BOOL hosted
Обсуждение
Значение
hosted
свойство определяет, какие методы делегата вызывают, когда соответствие завершено. ЕслиYES
true
, это - размещенное соответствие, и делегатmatchmakerViewController:didFindPlayers
метод должен обеспечить список проигрывателей к Вашей игре. ЕслиNO
false
, это - одноранговое соответствие, иmatchmakerViewController:didCreateMatch
вызывается с aGKMatch
объект. Значение по умолчаниюNO
false
.Размещенные соответствия требуют, чтобы Вы обеспечили сервер, размещающий участников соответствия. Для получения дополнительной информации о реализации размещенных соответствий посмотрите Соответствия В реальном времени.
Оператор импорта
Objective C
@import GameKit;
Swift
import GameKit
Доступность
Доступный в OS X v10.8 и позже.
-
matchRequest matchRequest
СвойствоКонфигурация для желаемого соответствия. (только для чтения)
Объявление
Swift
var matchRequest: GKMatchRequest! { get }
Objective C
@property(nonatomic, readonly, retain) GKMatchRequest *matchRequest
Оператор импорта
Objective C
@import GameKit;
Swift
import GameKit
Доступность
Доступный в OS X v10.8 и позже.
-
Добавляют новые проигрыватели к существующему соответствию вместо того, чтобы начать новый матч.
Объявление
Swift
func addPlayersToMatch(_
match
: GKMatch!)Objective C
- (void)addPlayersToMatch:(GKMatch *)
match
Параметры
match
Существующее соответствие, к которому Вы хотите добавить проигрыватели.
Обсуждение
Ваша игра вызывает этот метод до представления контроллера представления к проигрывателю. Вызов этого метода дает контроллеру представления команду добавлять новые проигрыватели к предоставленному соответствию вместо того, чтобы создать новое соответствие.
Когда вызвано, этот метод устанавливает делегата на соответствии к
nil
и обновляет пользовательский интерфейс контроллера представления для отображения плееров, уже подключенных к соответствию.Оператор импорта
Objective C
@import GameKit;
Swift
import GameKit
Доступность
Доступный в OS X v10.8 и позже.
-
Обновляет состояние проигрывателя на представлении, чтобы показать, что проигрыватель соединился или разъединился от Вашего сервера.
Объявление
Swift
func setHostedPlayer(_
playerID
: String!, connectedconnected
: Bool)Objective C
- (void)setHostedPlayer:(NSString *)
playerID
connected:(BOOL)connected
Параметры
playerID
Строка идентификатора для проигрывателя, соединившегося с внешним сервером.
connected
Булево значение, утверждающее, подключается ли плеер к размещенному соответствию.
Обсуждение
При установке размещенного соответствия каждое устройство должно инстанцировать контроллера представления антрепренера и вывести на экран его к проигрывателю. Затем когда новый проигрыватель соединяется с Вашим сервером, Ваш сервер должен уведомить все участвующие устройства, уже подключенные к Вашему серверу. Каждое участвующее устройство должно тогда вызвать этот метод для обновления состояния того проигрывателя в интерфейсе matchmaking. Точно так же, если проигрыватель разъединяется от сервера, Ваш сервер должен сообщить каждому устройству так, чтобы устройства могли обновить свой пользовательский интерфейс.
Оператор импорта
Objective C
@import GameKit;
Swift
import GameKit
Доступность
Доступный в OS X v10.8 и позже.
Осуждаемый в OS X v10.10.
-
Обновляет состояние проигрывателя на представлении, чтобы показать, что проигрыватель соединился или разъединился от Вашего сервера.
Объявление
Swift
func setHostedPlayer(_
player
: GKPlayer!, didConnectconnected
: Bool)Objective C
- (void)setHostedPlayer:(GKPlayer *)
player
didConnect:(BOOL)connected
Параметры
player
GKPlayer
объект, идентифицирующий проигрыватель, соединившийся с внешним сервером.connected
Булево значение, утверждающее, подключается ли плеер к размещенному соответствию.
Обсуждение
При установке размещенного соответствия каждое устройство должно инстанцировать контроллера представления антрепренера и вывести на экран его к проигрывателю. Затем когда новый проигрыватель соединяется с Вашим сервером, Ваш сервер должен уведомить все участвующие устройства, уже подключенные к Вашему серверу. Каждое участвующее устройство должно тогда вызвать этот метод для обновления состояния того проигрывателя в интерфейсе matchmaking. Точно так же, если проигрыватель разъединяется от сервера, Ваш сервер должен сообщить каждому устройству так, чтобы устройства могли обновить свой пользовательский интерфейс.
Оператор импорта
Objective C
@import GameKit;
Swift
import GameKit
Доступность
Доступный в OS X v10.10 и позже.