首页 > 其他分享 >屏幕转换保存状态

屏幕转换保存状态

时间:2023-06-20 17:05:13浏览次数:19  
标签:videoObject 转换 Log 保存 videoLocation TAG video 屏幕 videoPosition


public class Video extends Activity {

	public static final String TAG = "Video";
	private VideoView videoObject;
	private String videoLocation;
	private int videoPosition;

	@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        // create view
        setContentView(R.layout.main);

    	// initialize video object
        videoObject = (VideoView) findViewById(R.id.video);

        // attempt to get data from before device configuration change
        Bundle returnData = (Bundle) getLastNonConfigurationInstance();

        if (returnData == null) {

        	// first startup
        	Log.d(TAG, "Player started for 1st time");

	        // set video path
	        videoLocation = "/sdcard/DCIM/Camera/video-2010-01-10-15-21-17.3gp";
	        videoObject.setVideoPath(videoLocation);

	        // play video
	        videoObject.start();

        } else {
        	// restart after device config change
        	Log.d(TAG, "Player re-started after device configuration change");

        	// fetch data from bundle
        	videoLocation = returnData.getString("LOCATION");
        	videoPosition = returnData.getInt("POSITION");
    		Log.d(TAG, "Video location: " + videoLocation);
    		Log.d(TAG, "Video position: " + videoPosition);

    		// apply properties to new object
	        videoObject.setVideoPath(videoLocation);
	        videoObject.seekTo(videoPosition);

	        // play video
        	videoObject.start();
        }
    }

	@Override
	public Object onRetainNonConfigurationInstance() {
		// Device configuration changed
		// Save current video playback state
		Log.d(TAG, "Saving video playback state");
		videoPosition = videoObject.getCurrentPosition();
		Log.d(TAG, "Video location: " + videoLocation);
		Log.d(TAG, "Video position: " + videoPosition);

		// Build bundle to save data for return
		Bundle data = new Bundle();
		data.putString("LOCATION", videoLocation);
		data.putInt("POSITION", videoPosition);
		return data;
	}

}

 

标签:videoObject,转换,Log,保存,videoLocation,TAG,video,屏幕,videoPosition
From: https://blog.51cto.com/u_16166892/6523951

相关文章

  • Picture专成Bitmap并保存到sd卡
    Bitmapb=Bitmap.createBitmap(picture.getWidth(),picture.getHeight(),Bitmap.Config.ARGB_8888);Canvasc=newCanvas(b);picture.draw(c);FileOutputStreamfos=null;try{......
  • 解决方案 | xpdf4.04支持中文pdf识别与转换(pdf转txt)
    一、下载地址按照参考链接将已经打包好,下载链接如下:https://www.123pan.com/s/9Rn9-eEQpH.html提取码:6666二、使用方法win+r输入cmd,使用cd切换到,pdftotext.exe所在文件夹....xpdf-tools-win-4.04\xpdf-tools-win-4.04\bin64按照如下命令即可完成转换。pdftotextinput.p......
  • 传奇架设时遇到Mir.DB 数据格式不符合,请使用数据工具转换后再使用!如何解决?
    今天碰到一朋友说他从论坛上下载了一个版本,然后更新了自己服务器上的引擎,启动服务器的时候就提示|:Mir.DB数据格式不符合,请使用数据工具转换后再使用!出现这种情况的原因是原来别人在架设的时候用的引擎和你使用的引擎不一样,或者同样的引擎版本号不一样,原来别人的数据没有删除,才会......
  • [连载]Java程序设计(01)---任务驱动方式:英制单位转换成公制单位
    任务:你所在的公司是一家美国的服装设计和制造公司,现在这家公司打算进入欧洲市场,于是需要一个将英制单位(英寸)换算为公制单位(厘米)的程序。已知1英寸=2.54厘米,该程序输入以英寸为单位的长度,显示该长度对应的厘米数。例如:输入英寸:2.5,输出:2.5英寸=6.35厘米。packagecom.lovo;importj......
  • vue学习第16天 CSS---3D转换 (translate3d 3d移动、3D旋转 rotate3d、transform-
    3D转换转换:1)3d移动 translate3d 2)3d旋转 rotate3d 3D的特点:1)近大远小2)物体后面遮挡不可见 3D转换:我们工作最常用的 3D位移 和 3D旋转 主要知识点: 1、三维坐标系(z轴,z外(屏幕)+,z内(屏幕)-)三维......
  • C++四种类型转换
    篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++四种类型转换相关的知识,希望对你有一定的参考价值。const_cast主要用于删除变量的const属性,便于赋值constinta=2;int*p=const_cast<int*>(&a);*p=3;reinterpret_cast仅仅是重新解释类型,没有二进制的......
  • C++ 关键字四种cast类型转换
    1.23四种cast类型转换作用:克服c中强制类型转化带来的风险,C++引入四种更加安全的强制类型转换运算符(明确转换的目的,偏于程序的维护和分析)const_cast://1.去除const属性,将只读变为只读写//2.针对常量指针、常量引用和常量对象constchar*p;char*p1=const_cast<char*>(p......
  • C++ 数据类型转换详解之终极无惑
    程序开发环境:VS2017+Win32+Debug文章目录1.隐式数据类型转换2.显示数据类型转换3.C++新式类型转换3.1const_cast3.2static_cast3.3dynamic_cast3.3.1向下转换3.3.2交叉转换3.4reinterpret_cast4.重载相关类型转换操作符4.1不同类对象的相互转换4.2基本数据类型与类对象......
  • 从pandas dataframe保存csv文件,不带双引号
    为了保存来自pandasdataframe的csv文件,我尝试了以下方法:res.to_csv('seq_test.fa',header=False,index=False,sep='\t',quoting=csv.QUOTE_NONE)复制这给出了以下错误:needtoescape,butnoescapecharset如果我不使用quoting=csv.QUOTE_NONE。我通过以下方式......
  • 一文理解什么是DTO、VO、BO、PO、DO,并推荐一款IDEA转换插件
     1、什么是DTO、VO、BO、PO、DO、POJOPOJO的定义是无规则简单的对象,在日常的代码分层中pojo会被分为VO、BO、PO、DTO。通过各层POJO的使用,有助于提高代码的可读性和可维护性。概念看似简单,但是想区分好或者理解好也不容易,本文简单梳理一下。DTO(DataTransferObject)数据传......