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

और क्या होगा यदि ऐसी कई क्रियाएं हैं जो मैं सेटिंग गतिविधि में कर सकता हूं? मैं परिणाम को मुख्य गतिविधि में वापस नहीं करना चाहता, मैं उन क्रियाओं को कहीं लिखना चाहता हूं और वहां से मुख्य गतिविधि में पढ़ना चाहता हूं।

0
Vahag Chakhoyan 13 मार्च 2020, 12:17
आपका मतलब है कि यदि उपयोगकर्ता लॉगआउट पर क्लिक करता है तो ऐप बंद करना चाहता है?
 – 
Ali
13 मार्च 2020, 12:23
आप मुख्य गतिविधि में onResume पद्धति का उपयोग कर सकते हैं। विधि में जांचें कि क्या आपका उपयोगकर्ता अभी भी लॉग इन है।
 – 
makuno
13 मार्च 2020, 12:24
startActivtiyForResult() का उपयोग कर सकते हैं
 – 
Priyanka
13 मार्च 2020, 12:26
नहीं, मैं मुख्य गतिविधि को बताना चाहता हूं कि लॉग आउट बटन क्लिक किया गया था?
 – 
Vahag Chakhoyan
13 मार्च 2020, 12:49
तो फिर आप फॉलो करना चाहते हैं -इल्हाम बागोस त्रिपोएत्रा उत्तर @VhagChakhoyan
 – 
Ali
13 मार्च 2020, 12:52

2 जवाब

मुख्य गतिविधि में आप सेटिंग गतिविधि का उपयोग कर प्रारंभ कर सकते हैं

Intent intent = new Intent(this, SettingActivity .class);
startActivityForResult(intent, yourRequestCode);

उसके बाद सेटिंग एक्टिविटी में जब आप बटन लॉगआउट पर क्लिक करते हैं, तो बूलियन का उपयोग करके पार्स करें

Intent intent= new Intent();
intent.putExtra("isClicked", true); // save clicked data
setResult(Activity.RESULT_OK, intent);
finish();

फिर, MainActivity में आप onActivityResult को इस तरह कॉल कर सकते हैं

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    if (resultCode == Activity.RESULT_OK && requestCode == yourRequestCode) {
        Boolean isLogoutClicked = data.getExtras().getBoolean("isClicked");
    }

अब आप सेटिंग गतिविधि से डेटा प्राप्त करते हैं जब बटन लॉगआउट क्लिक किया जाता है।

0
Ilham Bagoes T. 13 मार्च 2020, 12:48

मुख्य गतिविधि में

Intent intent = new Intent(this, SettingActivity .class);
startActivityForResult(intent, 123);

से

@Override
    protected void onActivityResult(int requestCode, int resultCode, 
      Intent data) {
      try {
        super.onActivityResult(requestCode, resultCode, data);

        if (requestCode == 123  && resultCode  == RESULT_OK) 
       {
            String requiredValue = data.getStringExtra("key");
        }
    } catch (Exception ex) {
        Toast.makeText(Activity.this, ex.toString(),
                Toast.LENGTH_SHORT).show();
    }

}

और इस प्रकार अपनी सेटिंग स्क्रीन में सेट करें

Intent intent = getIntent();
intent.putExtra("key", value);
setResult(RESULT_OK, intent);
finish();

और जांचें कि क्या मूल्य में डेटा है या आपके द्वारा अतीत में कुछ भी है कि यह स्क्रीन सेट करने से आता है

0
Amit pandey 13 मार्च 2020, 13:21
मैंने यह नहीं कहा कि मैं अपनी ऐप प्रक्रिया को मारना चाहता हूं।
 – 
Vahag Chakhoyan
13 मार्च 2020, 12:48