「Xamarin.MacのAVPlayerViewでオーバーレイ表示する」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
(ページの作成:「AVPlayerViewには「ContentOverlayViewプロパティ」というズバリなものがあるので、NSViewの派生クラスをそこにAddSubviewしてやればよい…」)
 
(相違点なし)

2021年2月10日 (水) 06:22時点における最新版

AVPlayerViewには「ContentOverlayViewプロパティ」というズバリなものがあるので、NSViewの派生クラスをそこにAddSubviewしてやればよい。

なお、Interface Builderで貼り付けたAVPlayerViewのContentOverlayViewプロパティが有効になるのはViewControllerのViewDidAppear以降であり、AwakeFromNibやViewDidLoadの段階ではnullなので注意すること。

public override void ViewDidAppear()
{
    // NSView派生クラスを作って
    var overlay = new NSView() {
        // AvPlayerViewと同じサイズにする
        Frame = avPlayerView.ContentOverlayView.Frame,
        // 縦横ともにオートリサイズ
        AutoresizingMask = NSViewResizingMask.WidthSizable | NSViewResizingMask.HeightSizable,
    };

    // ContentOverlayViewに突っ込む
    avPlayerView.ContentOverlayView.AddSubview(overlay);
}

関連項目[編集 | ソースを編集]