Ошибка приложения c TabHost

Activity Lifecycle, Saving Activity State, Managing Tasks, Intent, Intent Filter
feramount
Сообщения: 10
Зарегистрирован: 06 янв 2014, 16:00

Ошибка приложения c TabHost

Сообщение feramount » 06 янв 2014, 16:04

Есть код

Код: Выделить всё

package com.example.untitled3;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TabHost;

public class MyActivity extends Activity {
    /**
     * Called when the activity is first created.
     */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        TabHost mTabHost = (TabHost) findViewById(R.id.tabHost);
        mTabHost.setup();

        // инициализация была выполнена в getTabHost
        // метод setup вызывать не нужно

        TabHost.TabSpec tabSpec;

        tabSpec = mTabHost.newTabSpec("tag1");
        tabSpec.setIndicator("Вкладка 1");
        tabSpec.setContent(new Intent(this, tabplanner.class));
        mTabHost.addTab(tabSpec);

        tabSpec = mTabHost.newTabSpec("tag2");
        tabSpec.setIndicator("Вкладка 2");
        tabSpec.setContent(new Intent(this, tabnotes.class));
        mTabHost.addTab(tabSpec);

        tabSpec = mTabHost.newTabSpec("tag3");
        tabSpec.setIndicator("Вкладка 4");
        tabSpec.setContent(new Intent(this, tabfinance.class));
        mTabHost.addTab(tabSpec);

    }


}
Пишу под 4.0.3
Почему появляется ошибка "В приложении 'TabIntent' произошла ошибка"?

Лог компиляции

Код: Выделить всё

01-06 21:18:39.151  29344-29344/com.example.untitled3 E/AndroidRuntime﹕ FATAL EXCEPTION: main
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.untitled3/com.example.untitled3.MyActivity}: java.lang.IllegalStateException: Did you forget to call 'public void setup(LocalActivityManager activityGroup)'?
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
            at android.app.ActivityThread.access$600(ActivityThread.java:123)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:4424)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.IllegalStateException: Did you forget to call 'public void setup(LocalActivityManager activityGroup)'?
            at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:680)
            at android.widget.TabHost.setCurrentTab(TabHost.java:346)
            at android.widget.TabHost.addTab(TabHost.java:236)
            at com.example.untitled3.MyActivity.onCreate(MyActivity.java:28)
            at android.app.Activity.performCreate(Activity.java:4465)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
            at android.app.ActivityThread.access$600(ActivityThread.java:123)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:4424)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
            at dalvik.system.NativeStart.main(Native Method)


Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Ошибка приложения c TabHost

Сообщение altwin » 06 янв 2014, 16:49

метод setup вызывать не нужно
вы уверенны? Андрюха с вами не согласен...: [syntax=java]java.lang.IllegalStateException: Did you forget to call 'public void setup(LocalActivityManager activityGroup)'? [/syntax]

вам нужно наследоваться от TabActivity, вместо Activity
Изображение

feramount
Сообщения: 10
Зарегистрирован: 06 янв 2014, 16:00

Re: Ошибка приложения c TabHost

Сообщение feramount » 06 янв 2014, 16:56

altwin писал(а):
метод setup вызывать не нужно
вы уверенны? Андрюха с вами не согласен...: [syntax=java]java.lang.IllegalStateException: Did you forget to call 'public void setup(LocalActivityManager activityGroup)'? [/syntax]

вам нужно наследоваться от TabActivity, вместо Activity
Меняю import android.app.Activity; на import android.app.TabActivity;
а public class MyActivity extends Activity на public class MyActivity extends TabActivity
Слово TabActivity становиться перечеркнутым (при наведении: android.app.TabActivity is deprecated) и при компиляции вылетает с той же ошикой

Вот лог ошибок

Код: Выделить всё

01-06 21:58:38.071  30155-30155/com.example.untitled3 E/AndroidRuntime﹕ FATAL EXCEPTION: main
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.untitled3/com.example.untitled3.MyActivity}: java.lang.RuntimeException: Your content must have a TabHost whose id attribute is 'android.R.id.tabhost'
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
            at android.app.ActivityThread.access$600(ActivityThread.java:123)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:4424)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.RuntimeException: Your content must have a TabHost whose id attribute is 'android.R.id.tabhost'
            at android.app.TabActivity.onContentChanged(TabActivity.java:131)
            at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:254)
            at android.app.Activity.setContentView(Activity.java:1835)
            at com.example.untitled3.MyActivity.onCreate(MyActivity.java:15)
            at android.app.Activity.performCreate(Activity.java:4465)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
            at android.app.ActivityThread.access$600(ActivityThread.java:123)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:4424)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
            at dalvik.system.NativeStart.main(Native Method)

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Ошибка приложения c TabHost

Сообщение altwin » 06 янв 2014, 17:07

(при наведении: android.app.TabActivity is deprecated)
Ну да, по хорошему нужно использовать ActivityGroup, но я просто не помню как его варить, потому написал простой путь, ошибка не та же, а совсем другая:
[syntax=java] java.lang.RuntimeException: Your content must have a TabHost whose id attribute is 'android.R.id.tabhost'[/syntax]
мне почему то кажется, что это означает, что нужно изменить:
[syntax=xml]
<TabHost android:id="@+id/tabhost"
[/syntax]
на:
[syntax=xml]
<TabHost android:id="@android:id/tabhost"
[/syntax]
как то так...
P.S. а вообще стоит посмотреть на этот ответ - http://stackoverflow.com/a/4222356/2611075
Изображение

feramount
Сообщения: 10
Зарегистрирован: 06 янв 2014, 16:00

Re: Ошибка приложения c TabHost

Сообщение feramount » 06 янв 2014, 18:05

altwin писал(а):
(при наведении: android.app.TabActivity is deprecated)
Ну да, по хорошему нужно использовать ActivityGroup, но я просто не помню как его варить, потому написал простой путь, ошибка не та же, а совсем другая:
[syntax=java] java.lang.RuntimeException: Your content must have a TabHost whose id attribute is 'android.R.id.tabhost'[/syntax]
мне почему то кажется, что это означает, что нужно изменить:
[syntax=xml]
<TabHost android:id="@+id/tabhost"
[/syntax]
на:
[syntax=xml]
<TabHost android:id="@android:id/tabhost"
[/syntax]
как то так...
P.S. а вообще стоит посмотреть на этот ответ - http://stackoverflow.com/a/4222356/2611075
Как я понял ругается он на эту строчку

Код: Выделить всё

mTabHost.addTab(tabSpec);
Стоит мне их убрать из кода проект нормально компилируется.

Сделал как в том вопросе:

Код: Выделить всё

        LocalActivityManager mLocalActivityManager = new LocalActivityManager(this, false);
        mTabHost.setup(mLocalActivityManager);
Так же ругается на ту же самую строчку

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Ошибка приложения c TabHost

Сообщение altwin » 06 янв 2014, 18:24

newTabSpec, должен вызываться по отношению к объекту TabHost, у меня голова не понимает к вечеру, зачем вы создаете объект TabSpec tabSpec у которого пытаетесь вызвать этот метод. в примере показано:
[syntax=java]
mTabHost.addTab(mTabHost.newTabSpec("two")
.setIndicator("Second Results")
.setContent(new TabContentFactory() {

public View createTabContent(String tag) {
return new TextView(TestActivity.this);
}
}));
[/syntax]
что происходит, когда вы явно создаете объект и вызвать у него метод другого объекта в данном случая я не совсем понимаю, но явно что то не то.
Изображение

feramount
Сообщения: 10
Зарегистрирован: 06 янв 2014, 16:00

Re: Ошибка приложения c TabHost

Сообщение feramount » 06 янв 2014, 18:40

altwin писал(а):newTabSpec, должен вызываться по отношению к объекту TabHost, у меня голова не понимает к вечеру, зачем вы создаете объект TabSpec tabSpec у которого пытаетесь вызвать этот метод. в примере показано:
[syntax=java]
mTabHost.addTab(mTabHost.newTabSpec("two")
.setIndicator("Second Results")
.setContent(new TabContentFactory() {

public View createTabContent(String tag) {
return new TextView(TestActivity.this);
}
}));
[/syntax]
что происходит, когда вы явно создаете объект и вызвать у него метод другого объекта в данном случая я не совсем понимаю, но явно что то не то.
Как я понял я создаю объект с табом и заношу туда значения для него и уже потом через функцию addTab я его добавляю.
В вашем примере просто реализовано без этой переменной

Прописал

Код: Выделить всё

mTabHost.addTab(mTabHost.newTabSpec("tag1").setIndicator("Вкладка 1").setContent(new Intent(this, tabplanner.class)));
так же ругается

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Ошибка приложения c TabHost

Сообщение altwin » 06 янв 2014, 18:43

feramount писал(а): так же ругается
так же -это как? он у вас каждый раз ругается на разные вещи
Изображение

feramount
Сообщения: 10
Зарегистрирован: 06 янв 2014, 16:00

Re: Ошибка приложения c TabHost

Сообщение feramount » 06 янв 2014, 18:44

altwin писал(а):
feramount писал(а): так же ругается
так же -это как? он у вас каждый раз ругается на разные вещи

Код: Выделить всё

01-06 23:44:25.541      992-992/com.example.untitled3 E/AndroidRuntime﹕ FATAL EXCEPTION: main
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.untitled3/com.example.untitled3.MyActivity}: java.lang.IllegalStateException: Did you forget to call 'public void setup(LocalActivityManager activityGroup)'?
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
            at android.app.ActivityThread.access$600(ActivityThread.java:123)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:4424)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.IllegalStateException: Did you forget to call 'public void setup(LocalActivityManager activityGroup)'?
            at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:680)
            at android.widget.TabHost.setCurrentTab(TabHost.java:346)
            at android.widget.TabHost.addTab(TabHost.java:236)
            at com.example.untitled3.MyActivity.onCreate(MyActivity.java:26)
            at android.app.Activity.performCreate(Activity.java:4465)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
            at android.app.ActivityThread.access$600(ActivityThread.java:123)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:4424)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
            at dalvik.system.NativeStart.main(Native Method)

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Ошибка приложения c TabHost

Сообщение altwin » 06 янв 2014, 18:52

а внося последние изменения вы от кого наследовались?
Изображение

feramount
Сообщения: 10
Зарегистрирован: 06 янв 2014, 16:00

Re: Ошибка приложения c TabHost

Сообщение feramount » 06 янв 2014, 18:53

altwin писал(а):а внося последние изменения вы от кого наследовались?

Код: Выделить всё

package com.example.untitled3;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TabHost;

public class MyActivity extends Activity
{
    /**
     * Called when the activity is first created. 
     */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        TabHost mTabHost = (TabHost) findViewById(R.id.tabHost);
        mTabHost.setup();

        // инициализация была выполнена в getTabHost 
        // метод setup вызывать не нужно 

        TabHost.TabSpec tabSpec;

        mTabHost.addTab(mTabHost.newTabSpec("tag1").setIndicator("Вкладка 1").setContent(new Intent(this, tabplanner.class)));

    }
} 


Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Ошибка приложения c TabHost

Сообщение altwin » 06 янв 2014, 18:58

попробуйте вместо mTabHost.setup() сделать:
[syntax=java]
LocalActivityManager mLocalActivityManager = new LocalActivityManager(this, false);
setup(mLocalActivityManager);
[/syntax]
Изображение

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Ошибка приложения c TabHost

Сообщение altwin » 06 янв 2014, 18:59

ну или можно наследоваться от ActivityGroup и делать:
[syntax=java]
mTabHost.setup(this.getLocalActivityManager());
[/syntax]
должно работать вроде и то и то.
Изображение

feramount
Сообщения: 10
Зарегистрирован: 06 янв 2014, 16:00

Re: Ошибка приложения c TabHost

Сообщение feramount » 06 янв 2014, 19:02

altwin писал(а):ну или можно наследоваться от ActivityGroup и делать:
[syntax=java]
mTabHost.setup(this.getLocalActivityManager());
[/syntax]
должно работать вроде и то и то.

Код: Выделить всё

01-07 00:01:50.631    1408-1408/? E/AndroidRuntime﹕ FATAL EXCEPTION: main
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.untitled3/com.example.untitled3.MyActivity}: java.lang.IllegalStateException: Activities can't be added until the containing group has been created.
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
            at android.app.ActivityThread.access$600(ActivityThread.java:123)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:4424)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.IllegalStateException: Activities can't be added until the containing group has been created.
            at android.app.LocalActivityManager.startActivity(LocalActivityManager.java:262)
            at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:682)
            at android.widget.TabHost.setCurrentTab(TabHost.java:346)
            at android.widget.TabHost.addTab(TabHost.java:236)
            at com.example.untitled3.MyActivity.onCreate(MyActivity.java:28)
            at android.app.Activity.performCreate(Activity.java:4465)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
            at android.app.ActivityThread.access$600(ActivityThread.java:123)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:4424)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
            at dalvik.system.NativeStart.main(Native Method)
Ругается на mTabHost.addTab(mTabHost.newTabSpec("tag1").setIndicator("Вкладка 1").setContent(new Intent(this, tabplanner.class)));

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Ошибка приложения c TabHost

Сообщение altwin » 06 янв 2014, 19:12

значит нужно перед setup(mLocalActivityManager); сделать: [syntax=java]mLocalActivityManager.dispatchCreate(savedInstanceState);[/syntax]
и добавить в onResume: mLocalActivityManager.dispatchResume();
и в onPause: mLocalActivityManager.dispatchPause(isFinishing());
Изображение

feramount
Сообщения: 10
Зарегистрирован: 06 янв 2014, 16:00

Re: Ошибка приложения c TabHost

Сообщение feramount » 06 янв 2014, 19:42

altwin писал(а):значит нужно перед setup(mLocalActivityManager); сделать: [syntax=java]mLocalActivityManager.dispatchCreate(savedInstanceState);[/syntax]
и добавить в onResume: mLocalActivityManager.dispatchResume();
и в onPause: mLocalActivityManager.dispatchPause(isFinishing());

Код: Выделить всё

package com.example.untitled3;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TabHost;
import android.app.LocalActivityManager;

public class MyActivity extends Activity
{
    /**
     * Called when the activity is first created. 
     */
    LocalActivityManager mLocalActivityManager = new LocalActivityManager(this, false);
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        TabHost mTabHost = (TabHost) findViewById(R.id.tabHost);
        mLocalActivityManager.dispatchCreate(savedInstanceState);
        mTabHost.setup(mLocalActivityManager);

        // инициализация была выполнена в getTabHost 
        // метод setup вызывать не нужно 

        TabHost.TabSpec tabSpec;

        mTabHost.addTab(mTabHost.newTabSpec("tag1").setIndicator("Вкладка 1").setContent(new Intent(this, tabplanner.class)));

    }
    @Override
    protected void onPause() {
        super.onPause();
        mLocalActivityManager.dispatchPause(isFinishing());
    }

    @Override
    protected void onResume() {
        super.onResume();
        mLocalActivityManager.dispatchResume();
    }
} 

Код: Выделить всё

01-07 00:42:28.011    2006-2006/? E/AndroidRuntime﹕ FATAL EXCEPTION: main
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.untitled3/com.example.untitled3.MyActivity}: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.untitled3/com.example.untitled3.tabplanner}; have you declared this activity in your AndroidManifest.xml?
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
            at android.app.ActivityThread.access$600(ActivityThread.java:123)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:4424)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.untitled3/com.example.untitled3.tabplanner}; have you declared this activity in your AndroidManifest.xml?
            at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1508)
            at android.app.ActivityThread.resolveActivityInfo(ActivityThread.java:1767)
            at android.app.LocalActivityManager.startActivity(LocalActivityManager.java:285)
            at android.widget.TabHost$IntentContentStrategy.getContentView(TabHost.java:682)
            at android.widget.TabHost.setCurrentTab(TabHost.java:346)
            at android.widget.TabHost.addTab(TabHost.java:236)
            at com.example.untitled3.MyActivity.onCreate(MyActivity.java:29)
            at android.app.Activity.performCreate(Activity.java:4465)
            at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
            at android.app.ActivityThread.access$600(ActivityThread.java:123)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
            at android.os.Handler.dispatchMessage(Handler.java:99)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:4424)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
            at dalvik.system.NativeStart.main(Native Method)
Опять указывает на mTabHost.addTab(mTabHost.newTabSpec("tag1").setIndicator("Вкладка 1").setContent(new Intent(this, tabplanner.class)));

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Ошибка приложения c TabHost

Сообщение altwin » 06 янв 2014, 20:01

Не опять, а теперь он спрашивает есть ли ваша Activity - tabplanner, которую вы хотите открыть в манифесте?
Изображение

feramount
Сообщения: 10
Зарегистрирован: 06 янв 2014, 16:00

Re: Ошибка приложения c TabHost

Сообщение feramount » 06 янв 2014, 20:10

altwin писал(а):Не опять, а теперь он спрашивает есть ли ваша Activity - tabplanner, которую вы хотите открыть в манифесте?
Я этот файл никак не реактировал, он с каким был содержанием с тем и остался

Код: Выделить всё

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.example.untitled3"
          android:versionCode="1"
          android:versionName="1.0">
    <uses-sdk android:minSdkVersion="15"/>
    <application android:label="@string/app_name" android:icon="@drawable/ic_launcher">
        <activity android:name="MyActivity"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
    </application>
</manifest>

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Ошибка приложения c TabHost

Сообщение altwin » 06 янв 2014, 20:11

это называется - я упал со стула...


P.S. [syntax=xml]<activity
android:name="com.example.untitled3.TabPlanner"/> или как там она у вас правильно называется...[/syntax]
Последний раз редактировалось altwin 06 янв 2014, 20:14, всего редактировалось 1 раз.
Изображение

feramount
Сообщения: 10
Зарегистрирован: 06 янв 2014, 16:00

Re: Ошибка приложения c TabHost

Сообщение feramount » 06 янв 2014, 20:13

altwin писал(а):это называется - я упал со стула...


P.S. <activty
android:name="com.example.untitled3.TabPlanner"/> или как там она у вас правильно называется...
Спасибо. Прописал

Код: Выделить всё

        <activity android:name=".tabfinance"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
        <activity android:name=".tabnotes"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
        <activity android:name=".tabplanner"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
и все заработало.

Ответить