缩放比例的TextureView

时间:2019-03-27 08:51:57

标签: java android android-textureview

我正在TextureView上显示视频,我实现了“捏缩放”功能,并且可以正常工作。 在我的TextureView的{​​{1}}内部,缩放视图以填充布局,但保持宽高比。

下面是一个截图,可以使您更加清晰:

screenshot

如上所述,onMeasure已缩放,但仍保持其宽高比。

我遇到的问题是-由于TextureView已缩放,因此“捏缩放”将仅在视图内部进行,因此在我的TextureView外部进行捏缩放将不起作用。

下面是放大上面显示的视频时的外观示例:

screenshot2

我尝试将视图放置在TextureView内,使其与父级匹配/填充,然后实施缩放以在FrameLayout内进行,但是随后遇到{{3} }(编辑3),在某些设备上缩放无法正常工作。

我的问题:

有人可以建议我放大缩放的FrameLayout还是TextureView的父级的方法吗?

我应该像以前一样对TextureView进行缩放,还是应该对它的父级执行缩放,如果我对它的父级执行缩放,如何避免共享的链接中发生了什么?

PS ...由于一切正常,我没有提供任何代码,如果您希望我添加任何代码段,请在评论中问我。谢谢。


编辑

为更加清楚起见,目前,当我放大TextureView时,不会调整大小或更改其位置,而是在TextureView本身中进行缩放。放大时,黑色背景仍然可见。我想让整个TextureView在放大时“放大”,这就是为什么我提到我曾尝试在TextureView内添加TextureView并将捏缩放添加到改为FrameLayout

this issue是一个从未得到回答的类似问题。


编辑2:

阅读@pskink的评论后,我意识到更改FrameLayout实际上可以解决此问题。目前,缩放时会使用Matrix的尺寸,如果可以更改它以便使用屏幕的尺寸,我认为它将解决我的问题。我在TextureView类中使用以下内容进行放大和缩小:

TextureView

现在我不确定如何更改以上内容,以便缩放从屏幕的尺寸而不是视图的尺寸开始?

0 个答案:

没有答案