Я недавно начал работать с Android. Поэтому я на начальных этапах обучения.Android действительно вызывает вызовы startActivity()?
Вопрос: когда мы вызываем startActivty (Intent) в середине выполнения другого действия. Я действительно думал, что startActivity() просто перепрыгнет в вызываемую деятельность. Разве это не так? просто ли он убирает вызов активности? Я получаю это сомнение bcoz .. У меня есть программа, в которой Activity A имеет цикл. Некоторые, где в середине цикла действует операция B. Я хочу, чтобы активность A возобновлялась с циклом только тогда, когда заканчивается действие B. Я сделал вызов в петлевой как это:
in = new Intent(this,MyChoiceActivity.class);
in.putExtra("McObj", mc);
startActivity(in);
finish();
Так что же происходит активность А вызывает В, но В не вошел, А просто возобновляет цикл и снова вызывает Б, просто звонки в B уложены и как только цикл в A завершается, по одному вызову B в стеке выполняются, так что, наконец, первый вызов B выполняется последним (последний в первом случае) ... Но я не хочу, чтобы порядок менялся ... Если A вызывает B, он должен просто перейти и выполнить B, а затем только перейти к циклу ... что я должен сделать, чтобы выполнить это?
читайте это. Вы узнаете о жизненном цикле активности http://developer.android.com/reference/android/app/Activity.html –
добавить к предыдущему комментарию, finish(); используется, когда вы хотите перейти к следующему действию и уничтожить текущий. Если вы перейдете в «Активность B» и выполните финиш по завершению операции «А», вы не сможете вернуться в «Активность А» из Activity B, нажав кнопку «Назад». – Sharj
@ Sharj..I знаю, что..Я действительно пытаюсь передать вопросы от активности A до Activity B..Это действительно делается в цикле. С каждой итерацией вопрос передается на следующий объект .mc там, содержит вопрос ... изначально я реализовал это, не используя финиш. Даже тогда произошло то же самое. Сложности B слагаются. Что делать, чтобы избежать укладки вызовов? Есть идеи? – user2784307