मैंने एंड्रॉइड 4.0.3 (आइस क्रीम सैंडविच) में एक ऐप विकसित किया है, मैं गतिविधि नेविगेशन का परीक्षण करने के लिए दो गतिविधियों का उपयोग कर रहा हूं। लेकिन मैंने गतिविधि नेविगेशन में एक अलग व्यवहार का निरीक्षण किया।क्या यह एंड्रॉइड 4.0 में नया कार्यान्वयन है?
मैं गतिविधि ए से गतिविधि बी को कॉल कर रहा हूं गतिविधि बी में मैं केवल फिनिश() विधि को कॉल कर रहा हूं। ताकि हम पिछली गतिविधि ए देख सकें। यह वास्तव में अपेक्षित काम कर रहा है लेकिन समस्या बैक नेविगेशन (कॉलिंग फिनिश विधि या बैक-की दबाकर) के लिए है, यह ऑनर्यूम को कॉल करने के बजाय गतिविधि ए के क्रिएट() विधि को कॉल कर रही है ()। लेकिन पिछले संस्करणों में यह इस तरह व्यवहार नहीं कर रहा है। क्या यह एंड्रॉइड 4.0 में एक नया कार्यान्वयन है ??
यहाँ उदाहरण जो मैं लागू किया है:
Activity_A:
public class Activity_A extends Activity {
/** Called when the activity is first created. */
static int count=0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView text=(TextView)findViewById(R.id.textcontent);
text.setText("Activity 1 called:"+(++count)+" Times");
}
public void onClick(View v)
{
Intent intent=new Intent(this,Activity2.class);
startActivityForResult(intent, 1);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
Log.d("onActivityResult", "Called with Code:"+resultCode);
}
}
Activity_B:
public class Activity_B extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView text=(TextView)findViewById(R.id.textcontent);
text.setText("Activity 2");
}
public void onClick(View v)
{
setResult(1);
finish();
}
}
कृपया जाँच करें और मुझे पता है अगर मैं किसी भी गलती कर रहा हूँ करते हैं।
धन्यवाद, राम।
प्रश्न: क्या ऑनस्यूम के बाद आते हैं? मुझे लगता है कि गतिविधि बी को कॉल करने के बाद एंड्रॉइड द्वारा एक्टिविटी ए को गिरा दिया गया था - ऐसा लगता है कि मेरे द्वारा अनुमानित सभी एंड्रॉइड प्लेटफ़ॉर्म पर कुछ ऐसा हो सकता है। –