我想将我的媒体播放器从一个 surafceview 更改为另一个 surafceview 如何在 android 中做到这一点?

Posted

技术标签:

【中文标题】我想将我的媒体播放器从一个 surafceview 更改为另一个 surafceview 如何在 android 中做到这一点?【英文标题】:I want to change My mediaplayer from one surafceview to other surafceview how to do that in android? 【发布时间】:2013-08-26 04:02:44 【问题描述】:

您好,我的应用程序中有一个自定义媒体播放器,它具有全屏属性,因此我使用两种不同的全屏和普通布局, 当使用点击全屏时,媒体播放器必须将其表面从一个更改为另一个, 我怎样才能在android中实现这一点? 感谢您的回答,任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

您是否尝试过使用获取表面视图

SurfaceView sv = (SurfaceView) findViewById(R.id.customSurfaceViewID);

然后搞砸以获得全屏模式:

sv.setScaleX();
sv.setScaleY();

在您的 GLRender 中:

@Override /*landscape to portrait help*/
public void onSurfaceChanged(GL10 gl, int width, int height) 
    gl.glViewport(0, 0, width, height);
    float ratio = (float) width/height;
    gl.glMatrixMode(GL10.GL_PROJECTION);
    gl.glLoadIdentity();
    gl.glFrustumf(-ratio, ratio, -1, 1, 1, 50);

【讨论】:

我想使用两个不同的布局,所以我有两个不同的 surafceviews? hmmm...我不明白问题所在,也不明白您为什么要尝试使用两种不同的表面视图。也许不是解释你到底想要做什么;从用户的角度准确解释您期望发生的事情。并解释“我的应用程序具有全屏属性”是什么意思。你已经做了这个? 我的应用程序在纵向模式下工作,纵向视图与横向完全不同,所有控件都会改变它们的位置,所以我想使用不同的布局和新的表面视图。 所以我猜你的媒体播放器控件在表面视图上?当你点击“全屏模式”时,你想让surfaceview变成横向并占据整个屏幕? 当用户点击全屏时,我有单独的自定义控件,控件将更改其参数。并且在全屏模式下添加了一些新视图,因此我想使用不同的布局。

以上是关于我想将我的媒体播放器从一个 surafceview 更改为另一个 surafceview 如何在 android 中做到这一点?的主要内容,如果未能解决你的问题,请参考以下文章

如何以编程方式在视图控制器之间传递数据?我想将我的UITextfield数据传递给另一个视图控制器[重复]

是否可以通过编程关闭蓝牙耳机中的媒体音频模式?

我想将我的 dexie 值更改为空字符串

如何居中水平图像列表SwiftUI

我想将我的字幕直接放在我的图像上,但是屏幕尺寸发生变化时,字幕会被留下。有啥解决办法吗?

我想将我的 MongoDB 查询应用于 Javascript(选择特定列)