मौजूदा जवाब (में डेटा पास Intent
करने के लिए पारित कर दिया startActivity()
) इस समस्या को हल करने के लिए सामान्य तरीके से दिखाते हैं। एक और समाधान है जिसका उपयोग उस विषम स्थिति में किया जा सकता है जहां आप एक ऐसी गतिविधि का निर्माण कर रहे हैं जिसे किसी अन्य ऐप द्वारा शुरू किया जाएगा (उदाहरण के लिए, एक टास्कर प्लगइन में संपादन गतिविधियों में से एक ) और इसलिए Intent
जो लॉन्च करता है उसे नियंत्रित नहीं करता है Activity
।
आप एक बेस-क्लास बना सकते हैं Activity
जिसमें एक पैरामीटर के साथ एक कंस्ट्रक्टर होता है, फिर एक व्युत्पन्न वर्ग जिसमें एक डिफॉल्ट कंस्ट्रक्टर होता है, जो बेस क्लास कंस्ट्रक्टर को वैल्यू के साथ कॉल करता है:
class BaseActivity extends Activity
{
public BaseActivity(String param)
{
// Do something with param
}
}
class DerivedActivity extends BaseActivity
{
public DerivedActivity()
{
super("parameter");
}
}
यदि आपको बेस-क्लास कंस्ट्रक्टर को पास करने के लिए पैरामीटर उत्पन्न करने की आवश्यकता है, तो बस हार्ड-कोडेड मान को फ़ंक्शन कॉल के साथ बदलें जो पास करने के लिए सही मान लौटाता है।