如何在两个活动之间共享一个popwindows

时间:2013-11-27 10:26:55

标签: android android-activity share popupwindow

我有一个popupWindows,当我在活动中调用它时效果很好。但我的想法是为这个popupWindows设置特定的类,并通过不同的活动调用它。怎么可能?

我的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);

感谢您的帮助

1 个答案:

答案 0 :(得分: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