मैंने एक कस्टम व्यू बनाया है (चलो इसे MyView
पर कॉल करें) जो मूल रूप से कैनवास का उपयोग करके स्वयं कुछ टेक्स्ट खींचता है। खींचा जाने वाला पाठ वैश्विक चर का उपयोग करके सेट किया गया है।खुद को फिर से निकालने के लिए एक दृश्य को मजबूर करें
प्रोग्राम के निष्पादन के दौरान किसी बिंदु पर, मैं वैश्विक चर बदलना चाहता हूं, और MyView
टेक्स्ट को अपडेट करने के लिए खुद को फिर से तैयार करना चाहता हूं। मैंने findViewById()
और फिर invalidate()
की कोशिश की, लेकिन यह कुछ भी नहीं करता है। मुझे संदेह है कि MyView
के भीतर कुछ भी नहीं बदला है, ऐसा लगता है कि onDraw()
पर कॉल करने का कोई कारण नहीं है। क्या किसी दृश्य को खुद को फिर से चलाने के लिए मजबूर करने का कोई तरीका है, भले ही ऐसा लगता है कि इसकी आवश्यकता नहीं है?
क्षमा करें, आप सही हैं, मैंने वास्तव में 'अवैध()' को कॉल किया था। मेरा कहना था कि 'अवैध() 'को कॉल नहीं किया गया क्योंकि मैं जिस चर को बदल रहा था वह' व्यू '(यह वैश्विक था) के बाहर था। तो मैंने एक आंतरिक चर बनाया और अमान्य होने से पहले बदल दिया। –