我創建了一個類,該類根據饋入的參數生成PopupWindow。我相信這比我的PopupWindow操縱基於XML的內容更適合我的需求。如何在Android的屏幕上顯示非XML PopupWindow
創建窗口和它的內容似乎順利進行 - 它實際上讓內容出現在屏幕上,我還無法管理。問題是,我一直無法找到一個不依賴於LayoutInflater函數的PopupWindow代碼在屏幕上的示例。由於我的PopupWindow不是從XML文件生成的,因此我無法使用LayoutInflater將它放置在屏幕上。
另外我應該解釋的是,我的PopupWindow生成類是在它自己的文件。即它不是活動文件的子類。我這樣做了,這樣我就可以輕鬆地將我的自定義PopupWindow類複製到我可能開發的任何未來項目中。
這裏是我的課的基本佈局:
class myPopup extends Object {
public myPopup(parameters){
ViewGroup winBody;
// "winbBody" will be the content of the PopupWindow.
// Code that fills and adjusts "winBody" based on the parameters goes here.
int width = //Determined by parameters.
int height = //Determined by parematers.
PopupWindow pw = new PopupWindow(winBody, width, height, true);
//This is as far as I seem to get before getting stuck.
}
}
據我瞭解,我應該以某種方式使用PopupWindow功能「showAtLocation」,但我很清楚我應該用這個東西的參數。有人能告訴我如何讓我的彈出窗口出現在屏幕上嗎?希望在它的中心。 :)
我完全確定這個問題,但是你可以在java中以編程的方式創建PopupWindow佈局,這可能意味着你的窗口可能是一種動態的調用呼叫 – 2011-11-17 17:11:27
是的,這或多或少上面的代碼做了什麼。 (我沒有在這個問題中提供完整的代碼,因爲它很長,大部分與我的問題無關。) – Cambot
使用popupWindow的更新方法怎麼樣? – 2011-11-17 17:25:39