在滑动菜单中使用 Activity 而不是 Fragments

Use Activities instead of Fragments in a Sliding Menu

我有一个包含一些 Fragment 的滑动菜单,但我想用 Activities 更改它,可以吗?

private void replaceFragment(int pos) {
    Fragment fragment = null;
    switch (pos) {
        case 0:
            fragment = new X();
            break;
        case 1:
            fragment = new Y();
            break;
        case 2:
            fragment = new Z();
            break;
        default:
            fragment = new X();
            break;
    }

    if (null != fragment) {
        FragmentManager fragmentManager = getFragmentManager();
        FragmentTransaction transaction = fragmentManager.beginTransaction();
        transaction.replace(R.id.main_content, fragment);
        transaction.addToBackStack(null);
        transaction.commit();
    }

我不知道如何更改代码的最后一部分。 --> FragmentManager 和 --> FragmentTransaction。谢谢!!

是的,您可以使用 Activity 代替片段,但是 您面临以下挑战。

  1. 您需要在每个 activity 上实现滑动抽屉,如果您使用 fragment,那么 HomeActivity 滑动抽屉将显示在所有 fragment

如果您想实施 activity

,请像这样更新您的代码
private void replaceFragment(int pos) {
    Intent intent = null;
    Context context = this;
    switch (pos) {
        case 0:
            intent = new Intent(context, SecondActivity.class);
            break;
        case 1:
            intent = new Intent(context, ThirdActivity.class);
            break;
        case 2:
            intent =  new Intent(context, FourthActivity.class);
            break;
        default:
            intent = new Intent(context, DefaultActivity.class);
            break;
    }

    if (intent != null) {
        startActivity(intent);
    }
}