「Android/VideoView/動画にかぶせてボタンを配置」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→動画の上に上3つと下3ボタンが表示されるサンプル) |
(→動画の上に上3つと下3ボタンが表示されるサンプル) |
||
行1: | 行1: | ||
==動画の上に上3つと下3ボタンが表示されるサンプル== | ==動画の上に上3つと下3ボタンが表示されるサンプル== | ||
+ | ===xmlでレイアウト定義=== | ||
コード | コード | ||
VideoView videoView = (VideoView)findViewById(R.id.VideoView1); | VideoView videoView = (VideoView)findViewById(R.id.VideoView1); | ||
行70: | 行71: | ||
</RelativeLayout> | </RelativeLayout> | ||
</FrameLayout> | </FrameLayout> | ||
+ | </pre> | ||
+ | |||
+ | ===コードでレイアウト定義=== | ||
+ | <pre> | ||
+ | mVideoView = new VideoView(MainActivity.this); | ||
+ | FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, 300); | ||
+ | layoutParams.gravity = Gravity.CENTER; | ||
+ | FrameLayout layout = (FrameLayout)findViewById(R.id.videoLayout); | ||
+ | layout.addView(mVideoView, layoutParams); | ||
+ | |||
+ | int WC = ViewGroup.LayoutParams.WRAP_CONTENT; | ||
+ | int MP = ViewGroup.LayoutParams.MATCH_PARENT; | ||
+ | RelativeLayout btnLayout = new RelativeLayout(MainActivity.this); | ||
+ | btnLayout.setLayoutParams(new RelativeLayout.LayoutParams(MP, MP)); | ||
+ | RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(WC, WC); | ||
+ | lp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT); | ||
+ | lp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); | ||
+ | Button btn = new Button(MainActivity.this); | ||
+ | btn.setText("ボタン"); | ||
+ | btnLayout.addView(btn, lp); | ||
+ | layout.addView(btnLayout); | ||
</pre> | </pre> | ||
2018年11月1日 (木) 17:45時点における版
動画の上に上3つと下3ボタンが表示されるサンプル
xmlでレイアウト定義
コード
VideoView videoView = (VideoView)findViewById(R.id.VideoView1); videoView.setVideoPath("ttps://~test.mp4"); // 1:1でも4:3でも16:9でも表示されることを確認した videoView.start();
レイアウト
<FrameLayout android:id="@+id/videoView" android:layout_width="match_parent" android:layout_height="wrap_content"> <VideoView android:id="@+id/VideoView1" android:layout_width="match_parent" android:layout_height="match_parent" ></VideoView> <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent"> <Button android:id="@+id/btn1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="ぼたん1" android:layout_alignParentTop="true" android:layout_alignParentLeft="true"> </Button> <Button android:id="@+id/btn2" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="ぼたん2" android:layout_alignParentTop="true" android:layout_toLeftOf="@+id/btn3" android:layout_toRightOf="@+id/btn1"> </Button> <Button android:id="@+id/btn3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="ぼたん3" android:layout_alignParentTop="true" android:layout_alignParentRight="true"> </Button> <Button android:id="@+id/btn4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="ぼたん4" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true"> </Button> <Button android:id="@+id/btn5" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="ぼたん5" android:layout_alignParentBottom="true" android:layout_toLeftOf="@+id/btn6" android:layout_toRightOf="@+id/btn4"> </Button> <Button android:id="@+id/btn6" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="ぼたん6" android:layout_alignParentBottom="true" android:layout_alignParentRight="true"> </Button> </RelativeLayout> </FrameLayout>
コードでレイアウト定義
mVideoView = new VideoView(MainActivity.this); FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, 300); layoutParams.gravity = Gravity.CENTER; FrameLayout layout = (FrameLayout)findViewById(R.id.videoLayout); layout.addView(mVideoView, layoutParams); int WC = ViewGroup.LayoutParams.WRAP_CONTENT; int MP = ViewGroup.LayoutParams.MATCH_PARENT; RelativeLayout btnLayout = new RelativeLayout(MainActivity.this); btnLayout.setLayoutParams(new RelativeLayout.LayoutParams(MP, MP)); RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(WC, WC); lp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT); lp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); Button btn = new Button(MainActivity.this); btn.setText("ボタン"); btnLayout.addView(btn, lp); layout.addView(btnLayout);