Проблема Android StackOverflow - PullRequest
0 голосов
/ 22 февраля 2012

Я использую ActivityGroup в приложении для Android для управления вкладкой в ​​различных действиях, а также для управления внутренней навигацией в действии с помощью

    Intent activity3Intent = new Intent(v.getContext(), BookNowSetDateTime.class);
        activity3Intent.putExtra("contextvalue", context_value);
        replaceContentView("activity3", activity3Intent);


    protected void replaceContentView(String id, Intent newIntent) {
        // TODO Auto-generated method stub
        View view = getLocalActivityManager().startActivity(id,newIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)) .getDecorView(); this.setContentView(view);

    }

Теперь из-за этой внутренней навигации по Намерению получено сообщение об ошибке:

  02-22 15:27:52.920: E/ACRA(4344): MaidPro fatal error : null
        02-22 15:27:52.920: E/ACRA(4344): java.lang.StackOverflowError
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1646)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.View.draw(View.java:6936)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1646)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.View.draw(View.java:6936)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1646)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
        02-22 15:27:52.920: E/ACRA(4344):   at android.widget.AbsListView.dispatchDraw(AbsListView.java:1604)
        02-22 15:27:52.920: E/ACRA(4344):   at android.widget.ListView.dispatchDraw(ListView.java:3210)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.View.draw(View.java:6936)
        02-22 15:27:52.920: E/ACRA(4344):   at android.widget.AbsListView.draw(AbsListView.java:3028)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1646)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.View.draw(View.java:6936)
        02-22 15:27:52.920: E/ACRA(4344):   at android.widget.FrameLayout.draw(FrameLayout.java:357)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1646)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.View.draw(View.java:6936)
        02-22 15:27:52.920: E/ACRA(4344):   at android.widget.FrameLayout.draw(FrameLayout.java:357)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1646)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.View.draw(View.java:6936)
        02-22 15:27:52.920: E/ACRA(4344):   at android.widget.FrameLayout.draw(FrameLayout.java:357)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1646)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
        02-22 15:27:52.920: E/ACRA(4344):   at android.view.View.draw(View.java:6936)
    02-22 15:27:52.920: E/ACRA(4344):   at android.widget.FrameLayout.draw(FrameLayout.java:357)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1646)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.View.draw(View.java:6936)
    02-22 15:27:52.920: E/ACRA(4344):   at android.widget.FrameLayout.draw(FrameLayout.java:357)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1646)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.View.draw(View.java:6936)
    02-22 15:27:52.920: E/ACRA(4344):   at android.widget.FrameLayout.draw(FrameLayout.java:357)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1646)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.View.draw(View.java:6936)
    02-22 15:27:52.920: E/ACRA(4344):   at android.widget.FrameLayout.draw(FrameLayout.java:357)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1646)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.drawChild(ViewGroup.java:1644)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1373)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.View.draw(View.java:6936)
    02-22 15:27:52.920: E/ACRA(4344):   at android.widget.FrameLayout.draw(FrameLayout.java:357)
    02-22 15:27:52.920: E/ACRA(4344):   at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:1901)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewRoot.draw(ViewRoot.java:1530)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewRoot.performTraversals(ViewRoot.java:1266)
    02-22 15:27:52.920: E/ACRA(4344):   at android.view.ViewRoot.handleMessage(ViewRoot.java:1868)
    02-22 15:27:52.920: E/ACRA(4344):   at android
  • Так что, и я не могу уловить эту проблему StackOverflow, есть ли кто-нибудь, дайте мне лучшее решение для решения этой проблемы?

  • Как удалить или очистить стек действий, чтобы можно было решить эту тупиковую ситуацию активности?

Ответы [ 2 ]

0 голосов
/ 22 февраля 2012

ActivityGroup устарела. Вместо этого вы должны использовать новые API Fragment и FragmentManager.

Я бы порекомендовал вам использовать ActionBarSherlock для реализации вкладок панели действий по-новому. Он уже включает в себя официальный пакет совместимости Android для Android <3.0 и очень прост в использовании. </p>

0 голосов
/ 22 февраля 2012

Вы можете написать что-то вроде этого:

Intent activity3Intent = new Intent(v.getContext(), BookNowSetDateTime.class);
activity3Intent.putExtra("contextvalue", context_value);
startActivity(activity3Intent);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...