2013-11-27 83 views
0

我有一個單獨的彈出式窗口,當我在活動中調用它時效果很好。但我的想法是爲這個popupWindows設置特定的類並通過不同的活動調用它。這怎麼可能 ?如何在2個活動之間共享popwindows

我popupWindows類

public class GestionCat extends PopupWindow 

{ 語境m_context;

public GestionCat(Context context) 
{ 
    super(context); 

    m_context = context; 

    setContentView(LayoutInflater.from(context). 
     inflate(R.layout.cat, null)); 

    setHeight(WindowManager.LayoutParams.WRAP_CONTENT); 
    setWidth(WindowManager.LayoutParams.WRAP_CONTENT); 
} 

public void show(View anchor) 
{ 
    showAtLocation(anchor, Gravity.CENTER, 0, 0); 
} 

}

我怎麼稱呼它:

Activity activity = this.getParent(); 
View view = activity.findViewById(R.layout.main_layout); 
Context context = getApplicationContext(); 
GestionCat gestionCat = new GestionCat(context); 
gestionCat.show(view); 

感謝幫助

回答

0

你所尋找的是一個單身的創建。在你GestionCat類,你希望下面的代碼:

private GestionCat _gestionCat; 

public static GestionCat getInstance() 
{ 
    if(_gestionCat == null) 
    { 
     _gestionCat = new GestionCat(); 
    } 

    return _gestionCat; 
} 

現在你可以使用每次GestionCat.getInstance()獲得您正在尋找的GestionCat的同一個實例。這樣你可以在多個類中共享彈出窗口。

更多信息請參見http://msdn.microsoft.com/en-us/library/ff650316.aspx

相關問題