サポート問い合わせ先| システムステータス
ページコンテンツ

Android:ビューの追加/レイアウトの管理

このトピックでは、に追加されたビューのレイアウトを管理する方法を学習します。BrightcoveVideoView

レイアウトを理解する

Android 用 Brightcove ネイティブ SDK を使用する前に、Android アプリでレイアウトを管理およびカスタマイズする方法を理解しておくことをお勧めします。

まず、「 Android 開発者ユーザーインターフェイスガイド」を参照してください。

レイアウトパラメータの上書き

BrightcoveVideoViewは、BrightcoveExoPlayerVideoViewの親クラスです。

Viewにを追加する場合はBrightcoveVideoViewsetLayoutParams()View子に対してメソッドを使用して、View子にとって意味のあるレイアウトパラメータのみを適用します。

setLayoutParams()メソッドの例を次に示します。

@Override
public void setLayoutParams(ViewGroup.LayoutParams layoutParams) {
    Log.v(TAG, "setLayoutParams: " + layoutParams);
    super.setLayoutParams(layoutParams);
    if (layoutParams != null) {
        int childCount = getChildCount();
        FrameLayout.LayoutParams frameLayoutParams =
            new FrameLayout.LayoutParams(layoutParams.width, layoutParams.height);
        frameLayoutParams.gravity = Gravity.CENTER;
        for (int i = 0; i < childCount; i++) {
            getChildAt(i).setLayoutParams(frameLayoutParams);
        }
    }
}
Java

これにより、SurfaceViewおよびはImageViewBrightcoveVideoViewに指定されたレイアウトパラメータを取得できます。

SurfaceViewImageViewレイアウトパラメータをおよび子にのみ適用することは可能ですが、追加の子がいつ反応するのも難しいでしょう。ではBrightcoveVideoView、レイアウトパラメータが更新されています。

Brightcoveはオーバーライドを提案しますsetLayoutParams()の中にLinearLayout子は幅を通過しますが、高さと重力は変更されません。

ビューを追加する場合

に追加するアプリケーションはViewBrightcoveExoPlayerVideoViewプレーヤーの前にオブジェクトを追加する目的に応じて変更することができます。例えば、ビューを使用してキャプションを表示したり、TextViewsアプリでコントローラのレイアウトを追加したりするために追加/削除することができます。

ザ・BrightcoveExoPlayerVideoViewバリアントはBaseVideoViewこれはAndroidを拡張しますFrameLayout。これは、ビューをに追加できることを意味しますBrightcoveExoPlayerVideoViewあなたがそれをするのと同じ方法FrameLayout

Android アプリの activity_main.xml ファイルの例を次に示します。


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity" >

    <com.brightcove.player.view.BrightcoveExoPlayerVideoView
        android:id="@+id/brightcove_video_view"
        android:layout_width="match_parent"
        android:layout_height="280dp"
        android:layout_gravity="center_horizontal|top">
        <RelativeLayout
            android:id="@+id/rl_elephant"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="left|bottom"
            >
            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text=“HELLO WORLD”
                android:textColor="@color/white"
                >
        </RelativeLayout>
    </com.brightcove.player.view.BrightcoveExoPlayerVideoView>
</LinearLayout>

Java

ページの最終更新日04 Oct 2021