में GLSurfaceView PopupWindow
में FrameLayout
पर मुझे GLSurfaceView
जोड़ने की आवश्यकता है। समस्या यह है कि, आंतरिक रूप से, SurfaceView
वर्तमान विंडो से टोकन का अनुरोध करता है। PopupWindows
उनके स्वयं के टोकन नहीं है, तो मैं यह पॉपअप माता पिता से टोकन बजाय देते हैं, तो जैसे: अबएक पॉपअपविंडो
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();
}
}
...
}
, भले ही MySurfaceView
एक FrameLayout
में जोड़ा जाता है PopupWindow
की सामग्री है कि, यह वहाँ आकर्षित नहीं करता है। यह इस विचार पर आकर्षित करता है कि मुझे टोकन मिला है।
इसे लेआउट पर आकर्षित करने के लिए मैं इसे कैसे प्राप्त कर सकता हूं?
संपादित करें: कुछ और विवरण देने के लिए, यदि कोई फर्क पड़ता है, तो mPopupParent एक आईएमई व्यू (एक कीबोर्ड, अनिवार्य रूप से) है।
का प्रयोग करें आप 'PopupWindow' को छड़ी रहने के लिए है? मुझे लगता है कि आपको इसके बजाय 'संवाद' विषय के साथ एक सादा 'गतिविधि' का उपयोग करना चाहिए। –
मैं एक आईएमई पर काम कर रहा हूं, दुर्भाग्य से काम करने के लिए कोई गतिविधि नहीं है। –
क्या आपने 'addView' के माध्यम से' WindowManager' पर सीधे SurfaceView जोड़ने का प्रयास किया है? – Delyan