2013-06-11 12 views
5

PopupWindow numaralı telefona FrameLayout numaralı telefona GLSurfaceView eklenmesi gerekiyor. Sorun şu ki, dahili olarak SurfaceView geçerli pencereden token ister. MySurfaceViewPopupWindow içeriği öyle ki FrameLayout eklenir rağmen, ŞimdiBir PopupWindow'da GLSurfaceView

class MySurfaceView extends GLSurfaceView { 
    ... 
    @Override 
    public IBinder getWindowToken() { 
     // I set the mPopupParent manually to be the parent of the PopupWindow in question 
     return mPopupParent.getWindowToken(); 
    } 
    } 
    ... 
} 

: PopupWindows kendi simgelerini yok, bu yüzden şöyle yerine o açılan ebeveynden jeton verir orada çizmiyor. Simgeyi aldığım görüşe göre çiziyor.

Gerçekte eklendiği yerleşimi nasıl çizebilirim?

DÜZENLEME: Sadece biraz daha ayrıntı vermek gerekirse, bir fark yaratırsa, mPopupParent bir IME görünümüdür (temel olarak bir klavye).

+0

kullanılsın mı? Bunun yerine “Dialog” temasıyla sade bir 'Activity' kullanmanız gerektiğini düşünüyorum. –

+0

IME üzerinde çalışıyorum, maalesef üzerinde çalışacak bir Etkinlik yok. –

+1

SurfaceView'ı "addView" ile doğrudan 'WindowManager'ına eklemeyi denediniz mi? – Delyan

cevap

0
I got something just like yours,and finally these ways work out: 

için uygun değildir. Sen `PopupWindow` sopa kalmak zorunda bir iletişim

B. kullanın android.view.WindowManager

İlgili konular