В настоящее время я пытаюсь реализовать видеопросмотр, который будет показывать видео в определенной позиции. Я могу без проблем показать полноэкранное видео. Однако всякий раз, когда я попробуйте показать это видео внутри рамки (например, небольшого прямоугольника) Я могу показать только часть видео в этом представлении. Я не смог поместить видео в этот вид.
Я уже ищу много ссылок о масштабировании видео в Android, однако я не мог найти никакого способа сделать это. Любая помощь по этой проблеме будет полезной.
Я использую то, что у меня есть 2 разных класса. Один из них - мой класс видео активности, а другой - вспомогательный класс:
public class VideoViewCustom extends VideoView {
private int mForceHeight = 0;
private int mForceWidth = 0;
public VideoViewCustom(Context context) {
super(context);
}
public VideoViewCustom(Context context, AttributeSet attrs) {
this(context, attrs, 0);
}
public VideoViewCustom(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
public void setDimensions(int w, int h) {
this.mForceHeight = h;
this.mForceWidth = w;
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
setMeasuredDimension(mForceWidth, mForceHeight);
}
}
Этот класс помогает мне правильно установить размеры видеопросмотра, однако я не могу сделать так, чтобы видео помещалось в эту область. Я имею в виду, что я не мог масштабировать видео, чтобы оно соответствовало этой области. Я не знаю, является ли Android автоматически масштабируется до заданных размеров, но я не смог этого сделать.