GCKUIMediaController 클래스

GCKUIMediaController 클래스 참조

개요

Cast 수신기에서 미디어 재생 상태를 제어하거나 표시하는 데 사용되는 UI 보기의 컨트롤러입니다.

호출 애플리케이션은 적절한 속성을 설정하여 미디어 관련 UI 컨트롤을 컨트롤러에 등록합니다. 그러면 컨트롤러는 수신기에 적절한 미디어 명령어를 실행하여 컨트롤의 터치 이벤트에 응답하고 수신기에서 수신한 상태 정보와 미디어 메타데이터를 기반으로 컨트롤을 업데이트합니다. 컨트롤러는 현재 세션과 미디어 플레이어 상태에 알맞게 UI 컨트롤을 자동으로 활성화/비활성화합니다. 또한 요청이 진행되는 동안 모든 컨트롤을 사용 중지합니다.

위임 프로토콜은 GCKUIMediaControllerDelegate을 참고하세요.

Since
3.0

NSObject를 상속합니다.

인스턴스 메서드 요약

(instancetype) - init
 인스턴스를 초기화합니다. 더보기...
 
(void) - bindLabel:toMetadataKey:
 UILabel을 메타데이터 키에 바인딩합니다. 더보기...
 
(void) - bindLabel:toMetadataKey:withFormatter:
 UILabel을 메타데이터 키에 바인딩합니다. 더보기...
 
(void) - bindTextView:toMetadataKey:
 UITextView를 메타데이터 키에 바인딩합니다. 더보기...
 
(void) - bindTextView:toMetadataKey:withFormatter:
 UITextView를 메타데이터 키에 바인딩합니다. 더보기...
 
(void) - bindImageView:toImageHints:
 UIImageViewGCKUIImageHints 인스턴스에 바인딩합니다. 더보기...
 
(void) - unbindView:
 지정된 뷰를 바인딩 해제합니다. 더보기...
 
(void) - unbindAllViews
 바인딩된 모든 뷰를 바인딩 해제합니다. 더보기...
 
(GCKMediaRepeatMode- cycleRepeatMode
 대기열의 반복 모드를 주기의 다음 모드로 변경합니다(더보기...
).
 
(void) - selectTracks
 미디어 트랙 선택 UI를 표시하는 편의 메서드입니다. 더보기...
 

속성 요약

id< GCKUIMediaControllerDelegatedelegate
 GCKUIMediaController에서 알림을 받기 위한 위임입니다. 더보기...
 
GCKSessionsession
 이 컨트롤러와 연결된 세션입니다. 더보기...
 
BOOL mediaLoaded
 수신기에 현재 로드 (또는 로드)된 미디어가 있는지 여부 더보기...
 
BOOL hasCurrentQueueItem
 큐에 현재 항목이 있는지 여부 더보기...
 
BOOL hasLoadingQueueItem
 큐에 미리 로드된 항목이 있는지 여부 더보기...
 
GCKMediaPlayerState lastKnownPlayerState
 알려진 최신 미디어 플레이어 상태입니다. 더보기...
 
NSTimeInterval lastKnownStreamPosition
 알려진 최신 미디어 스트림 위치입니다. 더보기...
 
UIButton * playButton
 '재생' 버튼 더보기...
 
UIButton * pauseButton
 '일시중지' 버튼. 더보기...
 
GCKUIButtonplayPauseToggleButton
 '재생/일시중지' 전환 버튼 더보기...
 
GCKUIPlayPauseToggleControllerplayPauseToggleController
 '재생/일시중지' 전환 컨트롤러 더보기...
 
UIButton * stopButton
 '중지' 버튼 더보기...
 
GCKUIButtonforward30SecondsButton
 현재 재생 중인 미디어 항목에서 30초 앞으로 이동하는 버튼 더보기...
 
GCKUIButtonrewind30SecondsButton
 현재 재생 중인 미디어 항목에서 30초 뒤로 이동하는 버튼 더보기...
 
UIButton * pauseQueueButton
 현재 항목의 재생이 완료되면 대기열 재생을 일시중지하는 버튼 더보기...
 
UIButton * nextButton
 '다음' 버튼 더보기...
 
UIButton * previousButton
 '이전' 버튼 더보기...
 
GCKUIButtonrepeatModeButton
 사용 가능한 대기열 반복 모드를 순환하는 버튼입니다. 더보기...
 
UISlider * streamPositionSlider
 현재 스트림 위치를 표시하고 변경하기 위한 슬라이더입니다. 더보기...
 
UIProgressView * streamProgressView
 현재 스트림 진행 상황을 표시하는 뷰입니다. 더보기...
 
UILabel * streamPositionLabel
 현재 스트림 위치를 분과 초 단위로 표시하는 라벨입니다. 더보기...
 
UILabel * streamDurationLabel
 현재 스트림 재생 시간(분 및 초)을 표시하는 라벨입니다. 더보기...
 
UILabel * streamTimeRemainingLabel
 남은 스트림 시간 (기간에서 위치를 뺀 값)을 분과 초 단위로 표시하는 라벨입니다. 더보기...
 
GCKUIStreamPositionControllerstreamPositionController
 스트림 위치 컨트롤러 더보기...
 
BOOL displayTimeRemainingAsNegativeValue
 남은 스트림 시간이 음수 값으로 표시되는지 여부입니다(예: '-1:23:45'). 더보기...
 
UIButton * tracksButton
 오디오 트랙 및 자막 선택 버튼 더보기...
 
UILabel * smartSubtitleLabel
 현재 로드된 미디어의 자막을 표시하기 위한 라벨입니다. 더보기...
 
UIActivityIndicatorView * mediaLoadingIndicator
 미디어가 로드 상태임을 나타내는 활동 표시기 뷰 더보기...
 

메서드 세부정보

- (instancetype) init

인스턴스를 초기화합니다.

- (void) bindLabel: (UILabel *)  label
toMetadataKey: (NSString *)  key 

UILabel을 메타데이터 키에 바인딩합니다.

보기에 해당하는 메타데이터 필드의 현재 값이 표시됩니다.

사전 정의된 메타데이터 키 목록은 GCKMediaMetadata를 참고하세요.

Parameters
labelThe UILabel that will display the value.
keyThe metadata key.
- (void) bindLabel: (UILabel *)  label
toMetadataKey: (NSString *)  key
withFormatter: (GCKUIValueFormatter formatter 

UILabel을 메타데이터 키에 바인딩합니다.

보기에 해당하는 메타데이터 필드의 현재 값이 표시됩니다.

사전 정의된 메타데이터 키 목록은 GCKMediaMetadata를 참고하세요.

Parameters
labelThe UILabel that will display the value.
keyThe metadata key.
formatterA block that will produce the desired string representation of the value.
- (void) bindTextView: (UITextView *)  textView
toMetadataKey: (NSString *)  key 

UITextView를 메타데이터 키에 바인딩합니다.

보기에 해당하는 메타데이터 필드의 현재 값이 표시됩니다.

사전 정의된 메타데이터 키 목록은 GCKMediaMetadata를 참고하세요.

Parameters
textViewThe UITextView that will display the value.
keyThe metadata key.
- (void) bindTextView: (UITextView *)  textView
toMetadataKey: (NSString *)  key
withFormatter: (GCKUIValueFormatter formatter 

UITextView를 메타데이터 키에 바인딩합니다.

보기에 해당하는 메타데이터 필드의 현재 값이 표시됩니다.

사전 정의된 메타데이터 키 목록은 GCKMediaMetadata를 참고하세요.

Parameters
textViewThe UITextView that will display the value.
keyThe metadata key.
formatterA block that will produce the desired string representation of the value.
- (void) bindImageView: (UIImageView *)  imageView
toImageHints: (GCKUIImageHints *)  imageHints 

UIImageViewGCKUIImageHints 인스턴스에 바인딩합니다.

현재 설치된 UIImagePicker는 뷰의 메타데이터에서 이미지를 선택하는 데 사용됩니다.

Parameters
imageViewThe UIImageView that will display the selected image.
imageHintsThe image hints.
- (void) unbindView: (UIView *)  view

지정된 뷰를 바인딩 해제합니다.

Parameters
viewThe view to unbind.
- (void) unbindAllViews

바인딩된 모든 뷰를 바인딩 해제합니다.

- (GCKMediaRepeatMode) cycleRepeatMode

큐의 반복 모드를 주기의 다음 모드로 변경합니다.

GCKMediaRepeatModeOffGCKMediaRepeatModeAllGCKMediaRepeatModeSingleGCKMediaRepeatModeAllAndShuffle

반환 값
새로운 반복 모드입니다.
- (void) selectTracks

미디어 트랙 선택 UI를 표시하는 편의 메서드입니다.

부동산 세부정보

- (id<GCKUIMediaControllerDelegate>) delegate
readwritenonatomicweak

GCKUIMediaController에서 알림을 받기 위한 위임입니다.

- (GCKSession*) session
readnonatomicstrong

이 컨트롤러와 연결된 세션입니다.

- (BOOL) mediaLoaded
readnonatomicassign

수신기에 현재 로드 (또는 로드)된 미디어가 있는지 여부

활성화된 전송 세션이 없는 경우 NO입니다.

- (BOOL) hasCurrentQueueItem
readnonatomicassign

큐에 현재 항목이 있는지 여부

- (BOOL) hasLoadingQueueItem
readnonatomicassign

큐에 미리 로드된 항목이 있는지 여부

- (GCKMediaPlayerState) lastKnownPlayerState
readnonatomicassign

알려진 최신 미디어 플레이어 상태입니다.

활성 상태의 전송 세션이 없으면 마지막 세션이 종료되기 직전에 플레이어 상태가 됩니다. 이전 세션이 없는 경우 GCKMediaPlayerStateUnknown입니다.

- (NSTimeInterval) lastKnownStreamPosition
readnonatomicassign

알려진 최신 미디어 스트림 위치입니다.

활성화된 전송 세션이 없는 경우 마지막 세션이 종료되기 직전의 미디어 스트림 위치입니다. 이전 세션이 없는 경우 kGCKInvalidTimeInterval입니다.

- (UIButton*) playButton
readwritenonatomicweak

'재생' 버튼

버튼을 탭하면 현재 로드된 미디어 재생이 수신기에서 시작되거나 다시 시작됩니다. 재생이 이미 진행 중이거나 현재 로드된 미디어가 없거나 현재 전송 세션이 없는 경우 버튼이 사용 중지됩니다.

- (UIButton*) pauseButton
readwritenonatomicweak

'일시중지' 버튼.

버튼을 탭하면 현재 로드된 미디어의 재생이 수신기에서 일시중지됩니다. 현재 로드된 미디어가 일시중지를 지원하지 않거나, 현재 재생 중인 미디어가 없거나, 현재 로드된 미디어가 없거나, 현재 활성화된 전송 세션이 없는 경우 버튼이 사용 중지됩니다.

- (GCKUIButton*) playPauseToggleButton
readwritenonatomicweak

'재생/일시중지' 전환 버튼

호출자는 버튼의 GCKUIControlStatePlayGCKUIControlStatePause 상태에 적절한 아이콘을 설정해야 합니다. 즉, 재생 상태에 '일시중지' 아이콘을, 일시중지 상태에 '재생' 아이콘을 설정해야 합니다. 수신기의 현재 재생 상태를 반영하도록 버튼 상태가 자동으로 업데이트됩니다. 버튼을 탭하면 현재 로드된 미디어의 재생이 일시중지되거나 수신기에서 다시 시작합니다. 현재 로드된 미디어가 일시중지를 지원하지 않거나, 현재 재생 중이거나 일시중지되지 않았거나, 현재 로드된 미디어가 없거나, 현재 활성화된 전송 세션이 없는 경우 버튼이 사용 중지됩니다.

- (GCKUIPlayPauseToggleController*) playPauseToggleController
readwritenonatomicstrong

'재생/일시중지' 전환 컨트롤러

애플리케이션에서 제공하는 맞춤 재생/일시중지 전환 UI의 기본으로 사용됩니다. 자세한 내용은 GCKUIPlayPauseToggleController을 참조하세요.

Since
3.4
- (UIButton*) stopButton
readwritenonatomicweak

'중지' 버튼

버튼을 탭하면 현재 로드된 미디어의 재생이 수신기에서 중지됩니다. 현재 로드된 미디어가 없거나 현재 활성화된 전송 세션이 없는 경우 버튼이 사용 중지됩니다.

- (GCKUIButton*) forward30SecondsButton
readwritenonatomicweak

현재 재생 중인 미디어 항목에서 30초 앞으로 이동하는 버튼

현재 로드된 미디어가 없거나 현재 활성화된 전송 세션이 없는 경우 버튼이 사용 중지됩니다.

- (GCKUIButton*) rewind30SecondsButton
readwritenonatomicweak

현재 재생 중인 미디어 항목에서 30초 뒤로 이동하는 버튼

현재 로드된 미디어가 없거나 현재 활성화된 전송 세션이 없는 경우 버튼이 사용 중지됩니다.

- (UIButton*) pauseQueueButton
readwritenonatomicweak

현재 항목의 재생이 완료되면 대기열 재생을 일시중지하는 버튼

- (UIButton*) nextButton
readwritenonatomicweak

'다음' 버튼

버튼을 탭하면 재생목록이 다음 미디어 항목으로 이동합니다. 작업이 지원되지 않거나 현재 로드된 미디어가 없거나 현재 활성화된 전송 세션이 없는 경우 버튼이 사용 중지됩니다.

- (UIButton*) previousButton
readwritenonatomicweak

'이전' 버튼

버튼을 탭하면 재생이 대기열의 이전 미디어 항목으로 이동합니다. 작업이 지원되지 않거나 현재 로드된 미디어가 없거나 현재 활성화된 전송 세션이 없는 경우 버튼이 사용 중지됩니다.

- (GCKUIButton*) repeatModeButton
readwritenonatomicweak

사용 가능한 대기열 반복 모드를 순환하는 버튼입니다.

(GCKMediaRepeatMode 참고) 호출자는 버튼의 UIControlStateNormal(반복 사용 중지), GCKUIControlStateRepeatSingle, GCKUIControlStateRepeatAllGCKUIControlStateShuffle 상태에 적절한 아이콘을 설정해야 합니다. 수신기의 현재 큐 반복 모드를 반영하도록 버튼 상태가 자동으로 업데이트됩니다. 버튼을 탭하면 다음 반복 모드로 다음 순서대로 순환됩니다.

GCKMediaRepeatModeOffGCKMediaRepeatModeAllGCKMediaRepeatModeSingleGCKMediaRepeatModeAllAndShuffle

현재 활성 상태인 전송 세션이 없으면 버튼이 사용 중지됩니다.

- (UISlider*) streamPositionSlider
readwritenonatomicweak

현재 스트림 위치를 표시하고 변경하기 위한 슬라이더입니다.

사용자가 슬라이더의 값을 변경하면 현재 로드된 미디어의 스트림 위치가 수신기에서 업데이트됩니다. 수신기에서 미디어 재생이 진행되는 동안 현재 스트림 위치를 반영하도록 슬라이더의 값이 실시간으로 업데이트됩니다. 현재 로드된 미디어가 탐색을 지원하지 않거나, 현재 로드된 미디어가 없거나, 현재 활성화된 전송 세션이 없는 경우 슬라이더가 사용 중지됩니다.

- (UIProgressView*) streamProgressView
readwritenonatomicweak

현재 스트림 진행 상황을 표시하는 뷰입니다.

수신기에서 미디어 재생이 진행되는 동안 현재 스트림 위치를 반영하도록 조회수 값이 실시간으로 업데이트됩니다. 현재 로드된 미디어가 실시간 스트림이거나, 현재 로드된 미디어가 없거나, 현재 전송 세션이 없는 경우 보기가 사용 중지됩니다.

- (UILabel*) streamPositionLabel
readwritenonatomicweak

현재 스트림 위치를 분과 초 단위로 표시하는 라벨입니다.

현재 로드된 미디어가 없거나 현재 활성화된 전송 세션이 없는 경우 라벨은 현지화된 '--:--' 형식을 표시합니다.

- (UILabel*) streamDurationLabel
readwritenonatomicweak

현재 스트림 재생 시간(분 및 초)을 표시하는 라벨입니다.

현재 로드된 미디어에 재생 시간이 없거나 (예: 실시간 스트림) 현재 로드된 미디어가 없거나 현재 활성화된 전송 세션이 없는 경우 라벨에 현지화된 '--:--'가 표시됩니다.

- (UILabel*) streamTimeRemainingLabel
readwritenonatomicweak

남은 스트림 시간 (기간에서 위치를 뺀 값)을 분과 초 단위로 표시하는 라벨입니다.

현재 로드된 미디어에 재생 시간이 없거나 (예: 실시간 스트림) 현재 로드된 미디어가 없거나 현재 활성화된 전송 세션이 없는 경우 라벨에 현지화된 '--:--'가 표시됩니다.

- (GCKUIStreamPositionController*) streamPositionController
readwritenonatomicstrong

스트림 위치 컨트롤러

애플리케이션에서 제공하는 맞춤 스트림 위치 또는 탐색 UI의 독립형으로 사용됩니다. 자세한 내용은 GCKUIStreamPositionController을 참조하세요.

Since
3.4
- (BOOL) displayTimeRemainingAsNegativeValue
readwritenonatomicassign

남은 스트림 시간이 음수 값으로 표시되는지 여부입니다(예: '-1:23:45').

기본적으로 이 속성은 YES로 설정됩니다.

- (UIButton*) tracksButton
readwritenonatomicweak

오디오 트랙 및 자막 선택 버튼

버튼을 탭하면 미디어 선택 UI가 사용자에게 표시됩니다. 현재 로드된 미디어에 선택 가능한 미디어 트랙이 없거나, 현재 로드된 미디어가 없거나, 현재 활성화된 전송 세션이 없는 경우 버튼이 사용 중지됩니다.

- (UILabel*) smartSubtitleLabel
readwritenonatomicweak

현재 로드된 미디어의 자막을 표시하기 위한 라벨입니다.

메타데이터에 명시적으로 설정된 자막 필드가 없는 경우 라벨은 미디어 유형(예: 영화의 스튜디오 이름, 음악 트랙의 아티스트 이름)에 따라 가장 적절한 메타데이터 입력란을 표시합니다.

- (UIActivityIndicatorView*) mediaLoadingIndicator
readwritenonatomicweak

미디어가 로드 상태임을 나타내는 활동 표시기 뷰