Exoplayerライブラリを使用してビデオ プレーヤー アプリケーションを作成しています。YouTube のような機能を作ろうとしています。ビデオ プレーヤーを下にドラッグすると、小さいサイズに縮小されます。そのために、 ViewDragHelperを使用しました。プレーヤーがドラッグしているとき、次のようにサイズを変更します:
public void onViewPositionChanged(View changedView, int left, int top, int dx, int dy) {
mTop = top;
mDragOffset = (float) top / mDragRange;
mVideoView.setPivotX(mHeaderView.getWidth());
mVideoView.setPivotY(mHeaderView.getHeight());
mVideoView.setScaleX(1 - mDragOffset / 2);
mVideoView.setScaleY(1 - mDragOffset / 2);
mDescView.setAlpha(1 - mDragOffset);
requestLayout();
}
mVideoView
でありSurfaceView
、プレーヤーはSurfaceView
コンテンツをレンダリングするために必要です。縮尺は正しくなっていますが、SurfaceView
コンテンツはそうではありません。
質問: SurfaceView とそのコンテンツをスケーリングするにはどうすればよいですか?