2012-09-04 68 views
1

我正在當前正在運行的活動之上添加視頻。我已成功地實現這一目標使用下列內容:Android:addContentView()在屏幕狀態改變之前不會出現

this.surface = new SurfaceView(getApplicationContext()); 
this.surface.getHolder().addCallback(this); 
WindowManager.LayoutParams params = new WindowManager.LayoutParams(); 
params.height  = 500; 
params.width  = 500; 
this.activity.addContentView(surface, params); 

我那麼MediaPlayer的重視從this.surface得到的SurfaceHolder。它的工作原理與我需要的完全一樣,除了一件事情:直到屏幕狀態改變後,SurfaceView纔會出現在屏幕上。我必須關閉屏幕才能將視圖添加到活動中。之後,一切都按預期工作。

任何人都有任何線索爲什麼會發生這種情況?

編輯:添加更多信息從評論開爾文Trinh。

這是使用本地視頻組件的AIR本機擴展。 AIR應用程序充當主要活動,儘管我無法訪問佈局或任何類似的內容。 this.activity是主要活動,取自擴展上下文(AIR和Java應用程序如何通信)。我需要將視頻展示在我已完成的應用上。

回答

1

你沒有提供包裝你的代碼的類,但我想這是你主要活動中的一個視圖。

this.activity.addContentView(surface, params);表示在您處於特定視圖時向活動添加表面視圖。這隻會將表面的引用添加到活動的視圖層次結構中,並且僅當活動重新加載(重新創建,重新啓動或恢復)時更新了

+0

對不起,我應該在問題中更具體。這是一個使用本地視頻組件的AIR本機擴展。 AIR應用程序充當主要活動,儘管我無法訪問佈局或任何類似的內容。 this.activity是主要活動,取自擴展上下文(AIR和Java應用程序如何通信)。我需要將視頻展示在我已完成的應用上。我只需要弄清楚如何在添加它時顯示正確。我會對你所說的話做一些快速的研究,希望它會有所幫助。謝謝回覆。 –

相關問題