क्या कई गतिविधियों में समान विकल्प मेनू विकल्प दिखाने का कोई सुविधाजनक तरीका है?विकल्प मेनू कोड का पुन: उपयोग
उदाहरण: मेरे ऐप में, मैं तीन तरीकों में से एक में एक टीवी गाइड प्रदर्शित करता हूं।
- सात दिन गाइड (7 टैब के साथ TabActivity)
- सभी चैनल 'अब दिखा' (ListActivity)
- सभी शो आज प्रारंभ समय के अनुसार (गतिविधि - ListActivity को आसानी से बदला जा सकता है)
TabActivity
में विकल्प मेनू के लिए, कोड काफी सरल है ...
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
menu.clear();
inflater.inflate(R.menu.gv_options_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.view:
...
...
}
}
... ख इस समय ऐसा लगता है कि मुझे इसे दो अन्य क्रियाओं में कॉपी/पेस्ट करने की आवश्यकता है जो मुझे पसंद नहीं है। यदि मैं एक के लिए विकल्प मेनू कोड बदलता हूं तो मुझे इसे अन्य दो के लिए भी करना होगा।
एकमात्र विकल्प मैं सोच सकता हूं कि मेरे पास एक 'सहायक' वर्ग (पीओजेओ) है जिसमें मैं एक विधि जोड़ सकता हूं और विधि के उपयोग की अनुमति देने के लिए context
पास कर सकता हूं और एक अन्य विधि जिसके परिणामस्वरूप मैं परिणाम दे सकता हूं स्विच-केस के साथ प्रक्रिया करने के लिए item.getItemId()
।
समान विकल्प मेनू के साथ कई गतिविधियां करने का सामान्य तरीका क्या है?
जैसा कि यह निकला कि मैं भूल रहा था कि 7 दिन की मार्गदर्शिका गतिविधि की टैब सामग्री वास्तव में सूचीत्मकताएं हैं - मैंने 'आज सभी शो ...' गतिविधि बदल दी है (मेरे प्रश्न में गतिविधि 3) भी ListActivity और एक बेस क्लास परिभाषित किया गया है जो सभी तीन अब विस्तारित है। पेड़ों के लिए जंगल को देखने में सक्षम नहीं होने के उन क्षणों में से एक। धन्यवाद। – Squonk