Android studio实现动态背景页面(动态视频为背景)
第一步:
在res目录下创建raw文件夹,并把想要导入的视频放在里面
可以用格式工厂先把视频格式化,以免视频内存过大无法运行。
第二步:配置页面布局xml文件
1.在activity_main.xml文件里加入以下代码:
//放在大布局框架里
android:fitsSystemWindows="true"
//放在布局框架内<com.example.lovestoryapp.CustomVideoViewandroid: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"><VideoViewandroid: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);}@Overrideprotected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {//我们重新计算高度int width = getDefaultSize(0, widthMeasureSpec);int height = getDefaultSize(0, heightMeasureSpec);setMeasuredDimension(width, height);}@Overridepublic void setOnPreparedListener(MediaPlayer.OnPreparedListener l) {super.setOnPreparedListener(l);}@Overridepublic 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() {@Overridepublic void onCompletion(MediaPlayer mediaPlayer) {customVideoView.start();}});}
第四步:运行至模拟器
Android studio实现动态背景页面(动态视频为背景)相关推荐
- 【Android NDK 开发】Android.mk 配置动态库 ( Android Studio 配置动态库 | 动态库加载版本限制 | 本章仅做参考推荐使用 CMake 配置动态库 )
文章目录 I . Android Studio 中使用 Android.mk 配置动态库 总结 II . 第三方动态库来源 III . 配置 Android.mk 构建脚本路径 IV . 预编译 第三 ...
- android 动态显示表格,在Android Studio中动态生成并显示表格
我在Android上创建我的第一个应用程序,因此我有低开发android应用程序的经验,而且我也是第一次使用java.在Android Studio中动态生成并显示表格 我想要什么? 我想从Array ...
- Android Studio 打包H5网址页面,封装APK
Android Studio 打包H5网址页面,封装APK 一.下载 AndroidStudio 二.配置SDK 三.新建项目 四.配置项目 MainActivity WebViewClient An ...
- 制作android布局模板,Android Studio自定义模板 写页面竟然可以如此轻松
学习编写模板最好的方式呢,就是参考IDE中已经提供的最简单的模板,那么在Android Studio中最简单的activity模板就是:Empty Activity了,我们打开该模板文件,首先对文件结 ...
- 仿天猫 购物车(Android studio 仿天猫 详情页面 添加购物车选择 颜色 尺寸demo)
这是我第一次编写博客,有不好的地方请发邮件或留言告知. 注*请勿转载-转载需博主同意 1.首先就是设计页面了–先效果图 2.现在开始看代码,没有啥好说的 这是布局文件 MainActivity 里面的 ...
- Android Studio 4.2 中Button的Backgroud背景设置默认为蓝紫色且无法修改的问题,及Button控件中英文字母全部默认显示为大写的解决方法
Button背景色无法修改 问题简述 在修改Button的背景颜色时,始终无法修改颜色为设置的颜色,且颜色始终为默认的蓝紫色: <Buttonandroid:id="@+id/btn_ ...
- Android Studio中的button修改不了背景颜色
用android:background=""修改button的背景没有作用 这时候可以将res/values/themes.xml下的 <style name="T ...
- android 动态注册,Android studio实现动态注册Native方法
说到动态就有静态,但是静态的注册在上一篇文章中已经包含了,这里就不在赘述了,直接说动态实现. 这里我们分步走. 1.创建android工程 选择普通工程 项目命名 不出意外,项目一会就建立完成. 2. ...
- android studio导入动态库,OPE体育官方网站-OPE体育官方网站
jQuery中live()使用报错,TypeError: $(...).live is not a function.[HTML 5 Performance] Measuring used JS he ...
最新文章
- CoordinatorLayout 的jar包位置
- SSL证书如何工作?
- script和href
- 论文笔记:NEUROVASCULAR COUPLING AND EPILEPSY: HEMODYNAMIC MARKERS
- ubuntu更换下载源
- python带参装饰器的改良版
- 用户身份与文件的权限(普通权限、特殊权限、隐藏权限和文件控制列表ACL)
- c++检测输入是否为数字_Go64 for Mac(检测应用是否为64位)
- 大数据分析实战-信用卡欺诈检测(三)- 模型评估
- c语言学生成绩管理系统课设作业,C语言课程设计——学生成绩管理系统
- Web前端开发要掌握的技能有哪些?
- POJ 1190 生日蛋糕 DFS
- 【UCOSIII操作系统】硬件初始化篇(1)硬件初始化以及开始运行系统
- MybatisPlus联合查询
- java课程设计中国象棋对弈xitong_java课程设计中国象棋对弈系统txt
- 【国际】塞拉利昂重点发展国家区块链计划
- lpp降维算法matlab,dimension-reduct method 多种降维算法,包括lle,lpp,ltsa matlab 238万源代码下载- www.pudn.com...
- Node.js中的child_process模块详解
- CSDN的博客搜索功能太弱,教你怎么搜索自己博客的文章
- c语言 2059 语法错误,关于CUDA C 项目中“ error C2059: 语法错误:“” ”问题的解决方法...