日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Android?studio實現動態背景頁面_Android

作者:小嘉圓子 ? 更新時間: 2022-06-21 編程語言

本文實例為大家分享了Android studio實現動態背景頁面的具體代碼,供大家參考,具體內容如下

第一步:

在res目錄下創建raw文件夾,并把想要導入的視頻放在里面

可以用格式工廠先把視頻格式化,以免視頻內存過大無法運行。

第二步:配置頁面布局xml文件

1.在activity_main.xml文件里加入以下代碼:

//放在大布局框架里
android:fitsSystemWindows="true"
//放在布局框架內
? ?<com.example.lovestoryapp.CustomVideoView
? ? ? ? android:id="@+id/videoview"
? ? ? ? android:layout_width="match_parent"
? ? ? ? android:layout_height="match_parent" />

2.在layout文件夾里創建videoview.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
? ? android:layout_width="match_parent"
? ? android:layout_height="match_parent">
? ? <VideoView
? ? ? ? android:id="@+id/videoview"
? ? ? ? android:layout_width="match_parent"
? ? ? ? android:layout_height="match_parent"
? ? ? ? android:layout_marginBottom="-150dp"
? ? ? ? android:layout_alignParentLeft="true"
? ? ? ? android:layout_alignParentRight="true"
? ? ? ? android:layout_alignParentBottom="true"
? ? ? ? android:layout_alignParentTop="true" />
?
</RelativeLayout>

第三步:配置java文件

1.創建java文件 CustomVideoView.java

package com.example.lovestoryapp;
?
import android.content.Context;
import android.media.MediaPlayer;
import android.util.AttributeSet;
import android.view.KeyEvent;
import android.widget.VideoView;
?
public class CustomVideoView extends VideoView {
?
? ? public CustomVideoView(Context context) {
? ? ? ? super(context);
? ? }
?
? ? public CustomVideoView(Context context, AttributeSet attrs) {
? ? ? ? super(context, attrs);
? ? }
?
? ? public CustomVideoView(Context context, AttributeSet attrs, int defStyle) {
? ? ? ? super(context, attrs, defStyle);
? ? }
?
? ? @Override
? ? protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
? ? ? ? //我們重新計算高度
? ? ? ? int width = getDefaultSize(0, widthMeasureSpec);
? ? ? ? int height = getDefaultSize(0, heightMeasureSpec);
? ? ? ? setMeasuredDimension(width, height);
? ? }
?
? ? @Override
? ? public void setOnPreparedListener(MediaPlayer.OnPreparedListener l) {
? ? ? ? super.setOnPreparedListener(l);
? ? }
?
? ? @Override
? ? public boolean onKeyDown(int keyCode, KeyEvent event) {
? ? ? ? return super.onKeyDown(keyCode, event);
? ? }
}

2.在MainActivity.java的Activity方法中加入以下代碼

?//找VideoView控件
? ? ? ? customVideoView = (CustomVideoView)findViewById(R.id.videoview);
? ? ? ? //加載視頻文件
? ? ? ? customVideoView.setVideoURI(Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.shipin1));
? ? ? ? //播放
? ? ? ? customVideoView.start();
? ? ? ? //循環播放
? ? ? ? customVideoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
? ? ? ? ? ? @Override
? ? ? ? ? ? public void onCompletion(MediaPlayer mediaPlayer) {
? ? ? ? ? ? ? ? customVideoView.start();
? ? ? ? ? ? }
? ? ? ? });
?
? ? }

第四步:運行至模擬器

原文鏈接:https://blog.csdn.net/sweetlcw/article/details/121525303

欄目分類
最近更新