1. 程式人生 > >在activity啟動後立即彈出PopupWindow的三個方法

在activity啟動後立即彈出PopupWindow的三個方法

那我們只需要在activity完全啟動後再彈出PopupWindow就行了。

第一種方法: 利用Activity的 onWindowFocusChanged()方法

  1. @Override
  2. publicvoid onWindowFocusChanged(boolean hasFocus) {  
  3.     // TODO Auto-generated method stub
  4.     super.onWindowFocusChanged(hasFocus);  
  5.     // 彈出PopupWindow的具體程式碼
  6. }  

第二種方法: 利用Handler和Runnable

  1. private Handler mHandler = 
    new Handler();  
  2. @Override
  3. protectedvoid onCreate(Bundle savedInstanceState) {  
  4.     // TODO Auto-generated method stub
  5.     super.onCreate(savedInstanceState);  
  6.     setContentView(R.layout.main);  
  7.     mHandler.postDelayed(mRunnable, 500);  
  8. }  
  9. private Runnable mRunnable = new Runnable() {  
  10.     public
    void run() {  
  11.     // 彈出PopupWindow的具體程式碼
  12.     }  
  13. };  
第三種方法:
  public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		mHandler.sendEmptyMessageDelayed(SHOWWINDOW, 200);  
	}

private Handler mHandler = new Handler()  
    {  
        public void handleMessage(Message msg)  
        {  
            switch (msg.what)  
            {  
                case SHOWWINDOW:  
                	popTipMessage();
                    break;  
                case ClOSEWINDOW:  
                    break;  
            }  
        }  
    };