android studio创建的项目就没有一个简单点的框架,生成的代码都是繁琐而复杂,并且不实用。
国内的页面一般都是TAB页面的比较多,老外更喜欢侧边菜单。
如果我们使用一个activity来创建程序,来用占位符管理多个fragment切换,这里水一篇最简单直接的做法。
源码:
https://download.csdn.net/download/robinfoxnan/89485371?spm=1001.2014.3001.5503
预览:https://i-blog.csdnimg.cn/blog_migrate/8de12ac506997fe8c63657dba4af8cce.jpeg
## **1. Java**实现
在 Android 开发中,使用 FragmentManager 来管理多个 Fragment 页面是一个常见的做法。可以通过以下步骤在主页面的占位符上替换多个 Fragment:
-
创建主 Activity 布局:在你的主 Activity 布局文件中,创建一个
FrameLayout作为占位符,用于显示Fragment。<!-- activity_main.xml --> <FrameLayout android:id="@+id/fragment_container" android:layout_width="match_parent" android:layout_height="match_parent" /> -
创建 Fragments:创建多个
Fragment,每个Fragment都有自己的布局和逻辑。// ExampleFragment.java public class ExampleFragment extends Fragment { @Nullable @Override public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { return inflater.inflate(R.layout.fragment_example, container, false); } }<!-- fragment_example.xml --> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <!-- Fragment content goes here --> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Example Fragment" /> </LinearLayout> -
在主 Activity 中管理 Fragments:在你的主 Activity 中使用
FragmentManager来替换占位符中的Fragment。// MainActivity.java public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 默认加载的 Fragment if (savedInstanceState == null) { getSupportFragmentManager().beginTransaction() .replace(R.id.fragment_container, new ExampleFragment()) .commit(); } } // 用于切换 Fragment 的方法 public void switchFragment(Fragment fragment) { getSupportFragmentManager().beginTransaction() .replace(R.id.fragment_container, fragment) .addToBackStack(null) .commit(); } } -
切换 Fragment:在主 Activity 中调用
switchFragment方法来切换不同的Fragment。// 切换到另一个 Fragment switchFragment(new AnotherFragment());
通过这种方式,你可以在主页面的占位符上动态替换多个 Fragment 页面。你可以根据需要在不同的事件(如按钮点击)中调用 switchFragment 方法来切换不同的 Fragment。
2.kotlin实现
2.1 添加基础切换流程
下面是用 Kotlin 实现上述功能的步骤:
-
创建主 Activity 布局:在你的主 Activity 布局文件中,创建一个
FrameLayout作为占位符,用于显示Fragment。<!-- activity_main.xml --> <FrameLayout android:id="@+id/fragment_container" android:layout_width="match_parent" android:layout_height="match_parent" /> -
创建 Fragments:创建多个
Fragment,每个Fragment都有自己的布局和逻辑。// ExampleFragment.kt class ExampleFragment : Fragment() { override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle? ): View? { // Inflate the layout for this fragment return inflater.inflate(R

2066

被折叠的 条评论
为什么被折叠?



