2011-03-04 14 views
14

मैं एंड्रॉइड एप्लिकेशन को कार्यान्वित कर रहा हूं जो वेब सेवा पर है। मैं लॉगिन Activity A बना रहा हूं, फिर होमपेज Activity B और इसी तरह।बटन पर कई गतिविधियां कैसे समाप्त करें क्लिक करें?

मान लीजिए कि ए, बी, सी, डी और ई आदि गतिविधियां हैं। मैं Activity E में एक होम बटन बना रहा हूं और उस Activity E, D and C पर क्लिक करके समाप्त होना चाहिए और घर Activity B फिर से शुरू करना चाहिए।

मैं इसे कैसे कार्यान्वित कर सकता हूं?

A> B> C> डी> ई> वापस ई गतिविधि में बटन> बी

+0

यह एक हार्डवेयर बैक बटन प्रेस है या यह एक कस्टम 'बटन 'प्रेस है? –

उत्तर

16

FLAG_ACTIVITY_CLEAR_TOP ध्वज पर एक नजर डालें।

संक्षेप में यह निम्नलिखित करता है। यदि Activity यह Intent आपके वर्तमान बैक स्टैक में रुकने के लिए निर्देशित है तो यह इसे फिर से शुरू कर देगा और इसके ऊपर के ढेर में सभी गतिविधियों को नष्ट करने के ऊपर के ढेर को साफ़ करेगा।

अद्यतन: जेसन हैनली के जवाब में।

इसका उल्लेख करने के लिए धन्यवाद। FLAG_ACTIVITY_CLEAR_TOP के दस्तावेज उस उदाहरण को शामिल करते हैं। यदि आप Activity B को पुनर्निर्मित नहीं करना चाहते हैं, लेकिन बस नया Intent पारित किया है तो आपको इसके लॉन्च मोड को singleTop के रूप में परिभाषित करना चाहिए।

+6

यदि बी का 'लॉन्चमोड'' सिंगलटॉप 'नहीं है, तो आपको बी को फिर से शुरू करना चाहते हैं, तो आपको ['FLAG_ACTIVITY_SINGLE_TOP'] (http://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_SINGLE_TOP) का भी उपयोग करना चाहिए। । –

3

श्रृंखला में सक्रियता रीसेट विधि का उपयोग करें। घर पर दबाए जाने पर बाहरी गतिविधि के साथ बंद करना शुरू करें, फिर इसके परिणाम की जांच करें और तदनुसार करीबी गतिविधि-डी और इसी तरह की जांच करें।

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