// MainActivity.java public class MainActivity extends AppCompatActivity { private FragmentManager fragmentManager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); fragmentManager = getSupportFragmentManager(); if (savedInstanceState == null) { FragmentTransaction transaction = fragmentManager.beginTransaction(); transaction.add(R.id.fragment_container, new FirstFragment()); transaction.commit(); } } public void switchToSecondFragment() { FragmentTransaction transaction = fragmentManager.beginTransaction(); transaction.replace(R.id.fragment_container, new SecondFragment()); transaction.addToBackStack(null); transaction.commit(); } public void switchToFirstFragment() { fragmentManager.popBackStack(); } } // FirstFragment.java public class FirstFragment extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_first, container, false); Button switchButton = view.findViewById(R.id.switch_button); switchButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { MainActivity activity = (MainActivity) getActivity(); activity.switchToSecondFragment(); } }); return view; } } // SecondFragment.java public class SecondFragment extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_second, container, false); Button switchButton = view.findViewById(R.id.switch_button); switchButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { MainActivity activity = (MainActivity) getActivity(); activity.switchToFirstFragment(); } }); return view; } }


上一篇:
下一篇:
切换中文