2013-02-21 14 views
9

मेरे पास एक ऐप है जिसमें दो गतिविधियां हैं। पहला वाला एक बटन के साथ प्रस्तुत किया जाता है जो दूसरा खुलता है।पारदर्शी थीम के साथ मुद्दे

<activity 
    android:name="com.example.buttonexample.MainActivity"> 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 

     <category android:name="android.intent.category.LAUNCHER" /> 
    </intent-filter> 
</activity> 

दूसरा गतिविधि:

यहाँ पहले एक के लिए Manifiest परिभाषा है

<activity 
    android:name="com.example.buttonexample.MainActivity2" 
    android:label="@string/title_activity_main_activity2" android:theme="@android:style/Theme.Translucent"> 
</activity> 

यहाँ कैसे मैं (पहली गतिविधि पर एक बटन के लिए OnClickListener के माध्यम से) दूसरी गतिविधि का शुभारंभ है :

public void startSecondActivityClick(View v) { 
    Intent startActivity2 = new Intent(this, MainActivity2.class); 
    startActivity(startActivity2); 
} 

यह ठीक काम करता है, हालांकि जब मैं होट मारकर ऐप को पृष्ठभूमि में रखता हूं मैं और फोरग्राउंड ऐप। मैं देख रहा हूं कि पहली गतिविधि लगातार बना रही है/खुद को नष्ट कर रही है।

private static int count = 0; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    count++; 

} 

protected void onDestroy() { 
    super.onDestroy(); 
    Log.i("MainActivity", String.format("Destroyed, %d", count)); 
} 

मैं भी देखा है कि पारदर्शी विषय को हटाने इसे ठीक करने लगता है: मैं एक स्थिर पूर्णांक बढ़ाने के लिए onDestory विधि में कुछ कोड डाल कर इस सत्यापित। मेरा सवाल यह है कि पारदर्शी या कुछ समान करने का कोई तरीका है लेकिन यह फिर से शुरू नहीं हुआ है? इसके अलावा, मैं उत्सुक हूं कि ऐसा क्यों होता है। मैं एक आकाशगंगा SIII पर 4.0.1 आईसीएस पर इसका परीक्षण कर रहा हूं।

+0

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

+0

मेरा मतलब है क्रेट और ऑनस्ट्रोय को तेजी से उत्तराधिकार में बुलाया जा रहा है। मैं कुछ लॉग आउटपुट जोड़ूंगा। – noahd

+3

कुछ खुदाई के ठीक बाद मैं यह समझने में सक्षम था कि यह क्यों हो रहा है। किसी ने डेवलपर विकल्पों में से एक को चालू कर दिया है, "गतिविधियों को न रखें"। इसे बंद करने के बाद यह बंद हो गया। मुझे संदेह है कि यह उत्पादन में अक्सर नहीं होगा क्योंकि ज्यादातर लोगों के पास शायद उस सेटिंग पर नहीं है। – noahd

उत्तर

0

कुछ खुदाई के ठीक बाद मैं यह समझने में सक्षम था कि यह क्यों हो रहा है। किसी ने डेवलपर विकल्पों में से एक को चालू कर दिया है, "गतिविधियों को न रखें"। इसे बंद करने के बाद यह बंद हो गया। मुझे संदेह है कि यह उत्पादन में अक्सर नहीं होगा क्योंकि ज्यादातर लोगों के पास शायद उस सेटिंग पर नहीं है। आप इसे अधिकांश फोन पर सेटिंग -> "डेवलपर विकल्प" के अंतर्गत पा सकते हैं।

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