java - addContentView within onSensorChanged genertes error -


मेरे पास MyCompassView वर्ग है जो दृश्य को बढ़ाता है और यह एक कंपास, SurfaceHolder गतिविधि सतह धारक पर कैमरे को खोलता है और है कि अंत में, MainActivity कि ऊपर उल्लिखित classes.The तरह से मैं <कोड ओवरले करने के लिए उपयोग करने से ओवरले किया जाना चाहिए> SurfaceHolder पर गतिविधि < कोड> मुख्य गतिविधि इस प्रकार है:

myCameraSurfaceHolder = नई सतह HolderActivity (यह); SetContentView (myCameraSurfaceHolder); और यह खोजा काम किया और कैमरा सतह धारक पर ठीक काम करता है

समस्या यह है कि जब मैं मैक कॉमपासदृश्य के दृश्य से मुख्य गतिविधि की सतह को ओवरले करने का प्रयास करता हूं मैं इसका इस्तेमाल करने के लिए:

loiViewInflater = (लेआउटइनफ्लाटर) getSystemService (संदर्भ। LAOUT_INFLATER_SERVICE); LoiViewInflater = लेआउटइनफ्लाटर। से (getApplicationContext ()); CompassOverLayView = loiViewInflater.inflate (R.layout.activity_viewactivity, नल); addContentView (compassOverLayView, नई LayoutParams (LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));

लेकिन addContentView (....) <कोड भीतर रखा जाता है सेंसर संवेदक के संवेदी परिवर्तन क्योंकि संवेदक से प्रत्येक रीडिंग के कारण मैं एज़िमथ मान पर आधारित विभिन्न सूचक अभिविन्यास के साथ कम्पास खींचना चाहता हूं। और तर्कसंगत शिकायत करता है और नीचे दिए गए संदेशों को उत्पन्न करता है। । कृपया मेरी मदद त्रुटि को ठीक करने

Logcat_OutPut:

  04-26 04: 07: 21.295: ई / AndroidRuntime (26,921): गंभीर अपवाद: मुख्य 04-26 04: 07: 21.295: ई / एंड्रॉइड रेंटाइम (26 9 21): java.lang.IllegalStateException: निर्दिष्ट बच्चे के पास पहले से ही एक अभिभावक है। आपको पहले बच्चे के अभिभावक पर removeView () को कॉल करना होगा 04-26 अप्रैल: 07: 21.295: ई / AndroidRuntime (26,921): 07:: 21.295: ई / AndroidRuntime (26,921): android.view.ViewGroup.addViewInner (ViewGroup.java:3739) 04-26 अप्रैल में एंड्रॉयड पर। view.ViewGroup.addView (ViewGroup.java:3610) 04-26 04: 07: 21.295: ई / AndroidRuntime (26,921): android.view.ViewGroup.addView (ViewGroup.java:3586) पर 04-26 04:07: 21.295: ई / AndroidRuntime (26,921): 07:: 21.295: ई / AndroidRuntime (26,921): android.app पर com.android.internal.policy.impl.PhoneWindow.addContentView (PhoneWindow.java:392) 04-26 अप्रैल में .Activity.addContentView (गतिविधि। Java200004) 04-26 04: 07: 21.295: E / AndroidRuntime (26 9 21): पर   

android.support.v7.app.ActionBarActivity.superAddContentView (ActionBarActivity.java, 2828)

के रूप में त्रुटि लॉग कहता है: " निर्दिष्ट बच्चे पहले से ही माता-पिता के पास है। आपको बच्चे के अभिभावक पर removeView () को कॉल करना होगा "।

यह त्रुटि कम्पास ओव्हर लाईव को संदर्भित करती है, जो पहले से ही एक मूल दृश्य में जोड़ दी गई थी और कर सकते हैं फिर से जोड़ा नहीं जा सकता।

यह एक UI तत्व को ताज़ा करने का एक बहुत ही अच्छा तरीका नहीं है, addContentView बार-बार नहीं कहलाता था।

यदि आपने अपना कम्पास प्रदर्शित करने के लिए एक कस्टम दृश्य बनाया है, इसे रीफ्रेश विधि जोड़ने का प्रयास करें और बस इसे कॉल करें।

Comments

Popular posts from this blog

wpf - ControlTemplate with changes for every class -

sonata admin - how to add ManyToOne property field in configureListfield in sonataAdmin -

sql - Return Function using Cursor -