1
我在窗體上顯示視頻,但視頻始終伸展到正方形。我無法控制任何視頻組件來獲取它的真實尺寸。這是顯示視頻的代碼:如何在codenameOne中顯示正確尺寸的視頻?
imageVideoContainer = new Container(new BorderLayout(BorderLayout.CENTER_BEHAVIOR_SCALE)) {
protected Dimension calcPreferredSize() {
return new Dimension(Display.getInstance().getDisplayWidth(), Display.getInstance().getDisplayWidth());
}
};
media = MediaManager.createMedia(FileSystemStorage.getInstance().getAppHomePath() + movePath, true);
mp = new MediaPlayer(media);
mp.setAutoplay(true);
imageVideoContainer.add(BorderLayout.CENTER, mp);
container = new Container(new BoxLayout(BoxLayout.Y_AXIS));
container.add(BorderLayout.centerAbsolute(imageVideoContainer));
如果我不覆蓋calcPreferredSize,它根本不顯示。任何幫助讚賞。我試過調試,以查看媒體播放器,以獲得有一個大小,但無法找到任何東西。
這將適用於風景視頻,但不幸的是不肖像。 – Karry
不需要。在您旋轉強制重新安排層次結構的設備後,此功能會有效。所以你會開始在景觀中使用肖像,然後當你旋轉時它會再次工作。視頻播放開始後,嘗試在組件上調用setShouldCalcSize(true),然後重新驗證()。 –