如何通过hide和show切换fragment
时间: 2024-03-10 21:43:23 浏览: 190
fragment 通过show和hide 实现界面切换
在 Android 中,可以通过 hide() 和 show() 方法来切换 Fragment。具体的实现步骤如下:
1. 获取 FragmentManager 对象:
```java
FragmentManager fragmentManager = getSupportFragmentManager();
```
2. 开启一个 FragmentTransaction 事务:
```java
FragmentTransaction transaction = fragmentManager.beginTransaction();
```
3. 如果要切换到的 Fragment 还没有被添加到 Activity 中,则使用 add() 方法添加到容器中:
```java
transaction.add(R.id.container, newFragment);
```
4. 如果已经添加过,可以使用 show() 方法显示该 Fragment:
```java
transaction.show(newFragment);
```
5. 使用 hide() 方法隐藏当前的 Fragment:
```java
transaction.hide(currentFragment);
```
6. 最后,提交事务:
```java
transaction.commit();
```
完整的示例代码如下:
```java
// 获取 FragmentManager 对象
FragmentManager fragmentManager = getSupportFragmentManager();
// 开启一个 FragmentTransaction 事务
FragmentTransaction transaction = fragmentManager.beginTransaction();
// 如果要切换到的 Fragment 还没有被添加到 Activity 中,则添加到容器中
if (!newFragment.isAdded()) {
transaction.add(R.id.container, newFragment);
}
// 隐藏当前的 Fragment
transaction.hide(currentFragment);
// 显示要切换到的 Fragment
transaction.show(newFragment);
// 提交事务
transaction.commit();
```
注意,这里的 currentFragment 和 newFragment 都是 Fragment 对象,需要根据具体的情况进行替换。同时,R.id.container 是一个 FrameLayout 容器,用来承载 Fragment。
阅读全文