Проблема с onActivityResult в активности вкладок

Я разрабатываю приложение, которое использует tabHost. На этих 5 вкладках каждая вкладка может открывать несколько действий. Моя проблема в том, что на последней вкладке (5-я вкладка) я сделал функцию захвата камеры, чтобы она открывала камеру и захватывала изображение, но перед вызовом onActivityResult она вызывает первую вкладку (1-я вкладка), а после этого вызывает onActivityResult последней вкладки. Но я не знаю, почему это происходит?

Мой код здесь:

Для создания нескольких действий я использую это:http://ericharlow.blogspot.in/2010/09/experience-multiple-android-activities.html

TabPage:

public class TabPage extends TabActivity {

    Resources res;
    public static TabHost tabHost;
    TabSpec obj, obj1;
    Intent intent;


    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);     
        tabHost = getTabHost();
        res = getResources();

        obj1 = tabHost.newTabSpec("tab1");
        tabHost.addTab(obj1.setIndicator("",
                res.getDrawable(R.drawable.tab1)).setContent(
                new Intent(this, Act1.class)));
                        .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)));

        obj = tabHost.newTabSpec("tab2");
        tabHost.addTab(obj.setIndicator("",
                res.getDrawable(R.drawable.tab2)).setContent(
                new Intent(this, Act2.class)
                        .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)));

        obj = tabHost.newTabSpec("tab3");
        tabHost.addTab(obj.setIndicator("",
                res.getDrawable(R.drawable.tab3)).setContent(
                new Intent(this, Act3.class)
                        .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)));

        obj = tabHost.newTabSpec("tab4");
        tabHost.addTab(obj.setIndicator("",
                res.getDrawable(R.drawable.tab4)).setContent(
                new Intent(this, Act4.class)
                        .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)));

        obj = tabHost.newTabSpec("tab5");
        tabHost.addTab(obj.setIndicator("",
                res.getDrawable(R.drawable.tab5)).setContent(
                new Intent(this, Act5.class)));

            tabHost.setCurrentTab(0);

    }

    public void switchTab(int tab) {
        tabHost.setCurrentTab(tab);
    }

}

Ответы на вопрос(1)

Ваш ответ на вопрос