Android 视频 小窗口 activity
时间: 2023-09-02 18:15:07 浏览: 91
在 Android 中,可以使用 SurfaceView 实现视频小窗口功能。具体实现步骤如下:
1. 在布局文件中添加 SurfaceView,用于显示视频画面。
```xml
<SurfaceView
android:id="@+id/surfaceView"
android:layout_width="200dp"
android:layout_height="200dp" />
```
2. 在 Activity 中获取 SurfaceView,并通过 MediaPlayer 播放视频。
```java
SurfaceView surfaceView = findViewById(R.id.surfaceView);
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource("http://example.com/video.mp4");
mediaPlayer.setDisplay(surfaceView.getHolder());
mediaPlayer.prepare();
mediaPlayer.start();
```
3. 在 Activity 中添加按钮或手势识别,用于控制视频小窗口的显示和隐藏。
```java
// 按钮点击事件处理
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 创建一个新的 Activity,用于显示视频小窗口
Intent intent = new Intent(MainActivity.this, FloatingVideoActivity.class);
startActivity(intent);
}
});
// 手势识别处理
private class MyGestureListener extends GestureDetector.SimpleOnGestureListener {
@Override
public boolean onSingleTapUp(MotionEvent e) {
// 隐藏视频小窗口
return true;
}
}
// 在 Manifest 文件中声明 FloatingVideoActivity
<activity android:name=".FloatingVideoActivity"
android:theme="@style/Theme.AppCompat.Dialog" />
```
4. 创建一个新的 Activity,用于显示视频小窗口。在该 Activity 的布局文件中添加 SurfaceView,并设置窗口大小、位置和透明度等参数,用于实现视频小窗口效果。
```xml
<SurfaceView
android:id="@+id/surfaceView"
android:layout_width="200dp"
android:layout_height="200dp"
android:background="@android:color/black" />
<!-- 设置窗口大小、位置和透明度等参数 -->
<style name="Theme.AppCompat.Dialog">
<item name="android:windowIsFloating">true</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowCloseOnTouchOutside">false</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
<item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item>
</style>
```
以上就是实现 Android 视频小窗口功能的基本步骤,具体实现方式可以根据实际需求进行调整。
阅读全文