2011-09-26 8 views
7

यह मेरा कोड है:java.lang.IleglegalStateException: निर्दिष्ट बच्चे के पास पहले से ही एक अभिभावक है। आप बच्चे के माता पिता पहले पर removeView() कॉल करना होगा

Frame.gameController.test(); 
setContentView(Frame.world.getScreen()); 
Frame.world.setRunning(true); 

दूसरी पंक्ति में मैं निम्न त्रुटि हो रही है:

ERROR/AndroidRuntime(15229): Caused by: java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first. 

किसी को भी मुझे इसे हल करने में मदद कर सकते हैं? पहले यह ठीक काम कर रहा था, समस्या तब शुरू होती है जब मैं इसे किसी अन्य गतिविधि में लेता हूं।

मैं एंड्रॉइड 2.2 का उपयोग कर रहा हूं।

+0

मैं कैनवास पर चित्रण कर रहा हूं, अगर यह –

उत्तर

10

आप कई गतिविधियों में एक ही दृश्य का उपयोग नहीं कर सकते हैं। इसके बजाय आपको दृश्य का एक नया उदाहरण बनाना चाहिए।

+1

में मदद करता है तो क्या आप मुझे एक उदाहरण, कोई लिंक दे सकते हैं? इसे उचित तरीके से कैसे करें? –

+1

@KISHORDATTAGUPTA ऐसा लगता है जैसे Frame.world.getScreen() को एक साझा उदाहरण मिल रहा है। आपको इसके बजाय एक नया उदाहरण बनाना चाहिए। – ThomasW

+0

क्या के लिए एक उदाहरण है? आपने हमें लगभग कोई कोड नहीं दिया, कोई उद्देश्य नहीं। मैंने आपको अभी बताया है कि आपको अपवाद मिल रहा है। – ernazm

11

शायद आप उन वस्तुओं से सामग्री सेट करने का प्रयास कर रहे हैं जिनके पास पहले से ही माता-पिता हैं। ऐसा लगता है कि उदाहरण के लिए, एक गतिविधि में कुछ दृश्यों को सेट करें:

TextView tv = new TextView(); 
layout.adView(tv); 
layout2.adView(tv); 

और कहा कि त्रुटि दिखाई देती है जब आप अलग अलग लेआउट है कि टीवी को जोड़ने के लिए प्रयास करें। आपकी स्थिति में ऐसा इसलिए है क्योंकि एक गतिविधि से लेआउट दूसरी गतिविधि में बच्चे के रूप में सेट करने की कोशिश कर रहा है।

आपको पहले अन्य माता-पिता से बच्चे को रिहा करना होगा।

+0

महान !!! आपने मेरा समय बचाया –

संबंधित मुद्दे

 संबंधित मुद्दे