安卓异常 : Did you forget to call 'public void setup (LocalActivityManager activityGroup)'

标签 android exception android-tabhost

我的代码:

public class MainActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        final TabHost tabHost = (TabHost) findViewById(R.id.tabhost);

//      LocalActivityManager mLocalActivityManager = new LocalActivityManager(this, false);
        tabHost.setup();

        TabSpec tabSpecCheckIn = tabHost.newTabSpec(getResources().getText(R.string.button_check_in).toString());

        tabSpecCheckIn.setIndicator(getResources().getText(R.string.button_check_in).toString(), getResources().getDrawable(android.R.drawable.star_off));
        tabSpecCheckIn.setContent(R.id.check_in);
        tabHost.addTab(tabSpecCheckIn);

        TabSpec tabSpecReview = tabHost.newTabSpec(getResources().getText(R.string.button_review).toString());
        tabSpecReview.setIndicator(getResources().getText(R.string.button_review).toString(), getResources().getDrawable(android.R.drawable.star_off));
        tabSpecReview.setContent(R.id.review);
        tabHost.addTab(tabSpecReview);

        TabSpec tabSpecMyCircles = tabHost.newTabSpec(getResources().getText(R.string.button_my_circles).toString());
        tabSpecMyCircles.setIndicator(getResources().getText(R.string.button_my_circles).toString(), getResources().getDrawable(android.R.drawable.star_off));
        tabSpecMyCircles.setContent(R.id.my_circle);
        tabHost.addTab(tabSpecMyCircles);

        TabSpec tabSpecMySettings = tabHost.newTabSpec(getResources().getText(R.string.button_settings).toString());
        tabSpecMySettings.setIndicator(getResources().getText(R.string.button_settings).toString(), getResources().getDrawable(android.R.drawable.star_off));
        tabSpecMySettings.setContent(new Intent(this,CheckInActivity.class));
        tabHost.addTab(tabSpecMySettings);

        tabHost.setCurrentTab(0);
    }
}

XML:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <TabHost android:id="@+id/tabhost"
        android:layout_width="fill_parent" android:layout_height="fill_parent">

        <TabWidget android:layout_width="fill_parent"
            android:layout_height="wrap_content" android:id="@android:id/tabs"
            android:layout_gravity="bottom" />


        <FrameLayout android:id="@android:id/tabcontent"
            android:layout_width="fill_parent" android:layout_height="fill_parent"
            android:paddingTop="65px">

            <LinearLayout android:id="@+id/check_in"
                android:orientation="vertical" android:layout_width="fill_parent"
                android:layout_height="fill_parent" android:padding="5px">
                <TextView android:layout_width="wrap_content"
                    android:layout_height="wrap_content" android:text="date"
                    android:textStyle="bold" />
            </LinearLayout>

            <LinearLayout android:id="@+id/review"
                android:orientation="vertical" android:layout_width="fill_parent"
                android:layout_height="fill_parent" android:padding="5px">
                <TextView android:layout_width="wrap_content"
                    android:layout_height="wrap_content" android:text="lieu"
                    android:textStyle="bold" />
            </LinearLayout>

            <LinearLayout android:id="@+id/my_circle"
                android:orientation="vertical" android:layout_width="fill_parent"
                android:layout_height="fill_parent" android:padding="5px">
            </LinearLayout>

            <LinearLayout android:id="@+id/setting"
                android:orientation="vertical" android:layout_width="fill_parent"
                android:layout_height="fill_parent" android:padding="5px">
            </LinearLayout>
        </FrameLayout>
    </TabHost>
</LinearLayout>

当我点击设置按钮时,exctption:

Did you forget to call 'public void setup (LocalActivityManager activityGroup)'

谁能帮助我。我尝试从 TabActiviyActivityGroup 扩展还有其他异常(exception)!!!
我想把 Tabhost 的按钮放在底部,当我点击按钮时会调用不同的 Activity !

最佳答案

你需要将MainActivity的基类从Activity改为ActivityGroup,如下:

  public class MainActivity extends ActivityGroup {
  ...
  }

ActivityGroup 将处理 LocalActivityManager 的一个实例。所以你不需要创建它。基类更改后,只需调用基类中定义的 getLocalActivityManager() 函数即可获取该实例。像这样调用tabHost的设置函数:

  tabHost.setup(this.getLocalActivityManager());

关于安卓异常 : Did you forget to call 'public void setup (LocalActivityManager activityGroup)' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3272500/

相关文章:

android - 选项卡式 Activity 在启动时打开第二个选项卡

android - 带有 Fragments 和 FragmentActivity 的 TabHost

android - 如何为市场签署 android 应用程序?

Android:选项卡中 View 的堆栈管理?

java - 获取值(value)并关闭与 recyclerview 和自定义适配器的对话框

c++ - 在可见性有限的 `std::terminate` 函数中调用 `noexcept` - gcc vs clang codegen

exception - NuGet 包的 FileNotFoundException

c++ - 抛出异常时不调用 move 构造函数

java - 应用程序没有采用我设置的布局 - 为什么?

java - JHipster API 认证