Android studio实现动态背景页面

本文实例为大家分享了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();
            }
        });
 
    }

第四步:运行至模拟器

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • android换肤功能 如何动态获取控件中背景图片的资源id?

    这个是在在做一个换肤功能时遇到的问题. 对于换肤,网上都有示例,可以从别的皮肤安装包中读取所要的资源,前提是你必须先持有这个资源的引用名称,像R.drawable.background(喂,这不是废话嘛).这个换肤的方案原理就是,自身应用的资源名称是R.drawable.background,那皮肤包中应该也是这个名称,然后通过这个名称获取该资源在皮肤包中的具体id,代码: //先获取本地资源引用名称,type name是R.drawable.background中的"drawable"

  • Android实现动态切换组件背景的方法

    本文所述的程序实现的功能为在软件中动态的选择组件背景,系统皮肤,自定义吐司背景等. 为实现这一要求,就需要用到安卓中的SharedPrefence的功能,首先在设置里面写一个控件,设置一个点击监听器,点击的时候显示一个Alert选择弹窗,让你进行选择,对这个弹窗再设置一个点击监听器(onItemListener),点击到具体某个的时候,把对应的点击id保存到sahredprefence里面去,这样,其他地方就可以从这里取得设置里选择的值,进行动态个性化处理. 具体代码如下: 1.设置选择的操作:

  • Android编程中聊天页面背景图片、标题栏由于键盘引起问题的解决方法

    本文实例讲述了Android编程中聊天页面背景图片.标题栏由于键盘引起问题的解决方法.分享给大家供大家参考,具体如下: 在一个群里面有人问到 聊天页面由于键盘弹出来,导致自定义的标题栏不见和背景图片都变形了,然后自己也折腾了一下,在stackOverFlow上面找到了一个解决方法. 解决方法很简单: 1.在AndroidManifest.xml文件里面的Activity配置: 复制代码 代码如下: android:windowSoftInputMode="adjustResize|stateAl

  • android 仿QQ动态背景、视频背景的示例代码

    本文介绍了android 仿QQ动态背景.视频背景的示例代码,分享给大家,具体如下: 效果如下: 如上图类似效果图: 1, 自定义视频类 继承VideoView public class CustomVideoView extends VideoView { public CustomVideoView(Context context) { super(context); } public CustomVideoView(Context context, AttributeSet attrs)

  • Android实现个人资料页面头像背景模糊显示包(状态栏)

    最近要实现这样一个效果,然后拿出来与大家分享一下主要的几段代码,希望大家能够用到,与人方便自己方便嘛! 首先: 要实现的是浮动状态栏效果,通过在Activity的onCreate方法中调用这个方法,然后就可以让整个布局浮现在整个手机屏幕之下了,这是我觉着最简单的一种方法了. public static void alphaTask(Activity context) { context.getWindow().requestFeature(Window.FEATURE_NO_TITLE); if

  • Android studio实现动态背景页面

    本文实例为大家分享了Android studio实现动态背景页面的具体代码,供大家参考,具体内容如下 第一步: 在res目录下创建raw文件夹,并把想要导入的视频放在里面 可以用格式工厂先把视频格式化,以免视频内存过大无法运行. 第二步:配置页面布局xml文件 1.在activity_main.xml文件里加入以下代码: //放在大布局框架里 android:fitsSystemWindows="true" //放在布局框架内    <com.example.lovestorya

  • Android Studio打包H5网址页面,封装成APK

    目录 一.下载 AndroidStudio 二.新建项目 三.配置项目 MainActivity WebViewClient AndroidManifest.xml 一.下载 AndroidStudio 自行下载安装,https://developer.android.google.cn/studio/#downloads 二.新建项目 三.配置项目 MainActivity package com.lmm.myapp; import android.support.v7.app.AppComp

  • android studio实现简单的计算器功能

    本文实例为大家分享了android studio实现计算器的具体代码,供大家参考,具体内容如下 先来个效果图: 功能: 满足加减乘除四则运算规则,有回退.清除功能. 下面的代码只是完成基本功能,若添加背景图先看看下面的方法:Android Studio App设置背景图片 1.本地准备好图片,复制它,粘贴进mipmap(drawable)文件夹. 2.在activity_main.xml里添加下面代码,注意添加位置. 3.完成,效果图: content_main.xml文件(页面布局,conte

  • Android Studio 3.0的下载安装教程

    本人没有接触android开发,由于想学习一下,所以自学,接下来是我学习路线,希望我走过的路能给你提供帮助. 下载 首先我们需要下载 Android Studio 3.0  官方下载  本站下载 然后学习Kotlin的语法,我推荐去Kotlin官方中文网在线学习,或者下载 PDF的中文文档  官方下载   本站下载 Android基础入门 Android基础入门教程目录 接下来介绍项目实战了,学习最好边做边发现问题. 补充如果安装 Android Studio 3.0 安装时候下载工具比较慢,D

  • Android Studio使用recyclerview实现展开和折叠功能(在之前的微信页面基础之上)

    Android中RecyclerView点击item展开列表详细内容 效果如下: 依然是xml文件的设计,使用了两个RelativeLayout,zu作为主布局和副布局,里面都加入textview显示内容,在副布局里加入一个imageview在这里插入图片描述作为子内容的背景图,代码如下: tab01.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&qu

  • Android Studio编写微信页面提交功能

    如题,本次项目的目标是完成一个微信页面的编写 要求完成以下需求: 1. 页面具有标题"微信"  2. 页面具有中间显示框  3. 页面具有底部选择框,并且具有选择事件  4. 页面底部选择框在进行改变的时候,我们需要中间显示框的页面同步改变  5. 页面的布局清晰 项目完成展示: 对于前端页面的显示: 页面的显示上,我使用的是在主页面上使用FrameLayout组件作为中间的主要显示区域,然后顶部和底部则使用include进行引入.对于页面的布局没有什么多说的,唯一要注意的就是页面的布

  • 详解Android studio 动态fragment的用法

    fragment的使用时Android的基础,它有两种用法,第一个就是静态的fragment.第二个则是动态的fragment. 静态fragment直接在layout创建你想要的fragment的XML的文件,然后在你的Java包里面创建对应fragment的class文件 布局代码如下所示 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http:

  • Android Studio实现注册页面跳转登录页面的创建

    本文是用来介绍Android Studio创建注册页面跳转登录页面的界面设计以及跳转功能地实现,完整结构见文章结尾. 用户注册界面 <?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"  

  • Android使用Fragment打造万能页面切换框架

    首先我们来回忆一下传统用Activity进行的页面切换,activity之间切换,首先需要新建intent对象,给该对象设置一些必须的参数,然后调用startActivity方法进行页面跳转.如果需要activity返回结果,则调用startActivityForResult方法,在onActivityResult方法中获得返回结果.此外,每一个要展示的activity需要在AndroidManifest.xml文件中注册.而且,如果在某些特定的情况下(比如65536方法数爆炸)要动态加载dex

随机推荐