Android视频的全屏切换
2016-03-30 09:07
525 查看
安卓视频播放的全屏播放其实很简单,就是做横竖两套布局,横布局只有播放器就可以了,具体做法如下:
在res目录下新建一个目录,起名为layout-land,存放横屏的布局,注意横屏布局的存放目录名称必须命名成layout-land,否则程序不能自动识别到横屏布局。然后在layout-land目录下建立一个和想要做横竖屏切换的布局相同名字的xml文件。
为了方便起见,这里的例子只是放了可以区别横竖屏的控件,首先看一下竖屏的布局。
layout/activity_main.xml
代码如下:
再来看一下横屏的布局。
layout-land/activity_main.xml
注意要保证横纵布局的控件ID相同,不然你要写两套监听事件了。
接下来到了重中之重了,切换布局的时候,只需判断屏幕方向进行切换即可。
大功告成,看看效果吧!
在res目录下新建一个目录,起名为layout-land,存放横屏的布局,注意横屏布局的存放目录名称必须命名成layout-land,否则程序不能自动识别到横屏布局。然后在layout-land目录下建立一个和想要做横竖屏切换的布局相同名字的xml文件。
为了方便起见,这里的例子只是放了可以区别横竖屏的控件,首先看一下竖屏的布局。
layout/activity_main.xml
代码如下:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="${relativePackage}.${activityClass}" > <ImageView android:id="@+id/iv" android:layout_width="match_parent" android:layout_height="300dp" android:src="@color/black"/> <Button android:id="@+id/btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="点我改变方向" android:layout_below="@id/iv" android:layout_alignStart="@id/iv"/> </RelativeLayout>
再来看一下横屏的布局。
layout-land/activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="${relativePackage}.${activityClass}" > <Button android:id="@+id/btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="点我改变方向" android:layout_alignParentBottom="true" android:layout_alignParentEnd="true" /> <ImageView android:id="@+id/iv" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_toStartOf="@id/btn" android:src="@color/black"/> </RelativeLayout>
注意要保证横纵布局的控件ID相同,不然你要写两套监听事件了。
接下来到了重中之重了,切换布局的时候,只需判断屏幕方向进行切换即可。
public class MainActivity extends Activity implements OnClickListener { <span style="white-space:pre"> </span> <span style="white-space:pre"> </span>private Button mBtn; <span style="white-space:pre"> </span>@Override <span style="white-space:pre"> </span>protected void onCreate(Bundle savedInstanceState) { <span style="white-space:pre"> </span>super.onCreate(savedInstanceState); <span style="white-space:pre"> </span>setContentView(R.layout.activity_main); <span style="white-space:pre"> </span>mBtn = (Button) findViewById(R.id.btn); <span style="white-space:pre"> </span>mBtn.setOnClickListener(this); <span style="white-space:pre"> </span>} <span style="white-space:pre"> </span>@Override <span style="white-space:pre"> </span>public void onClick(View v) { <span style="white-space:pre"> </span>// 如果屏幕方向不是横屏的话,就让屏幕方向变成横屏,否则变成竖屏 <span style="white-space:pre"> </span>if (getRequestedOrientation() != ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE) { <span style="white-space:pre"> </span>setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); <span style="white-space:pre"> </span>} else { <span style="white-space:pre"> </span>setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); <span style="white-space:pre"> </span>} <span style="white-space:pre"> </span>} }
大功告成,看看效果吧!
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories