Fragment和activity跳转 例子
时间: 2024-02-01 20:54:49 浏览: 71
可以通过调用Activity的startActivity()方法来启动一个新的Activity,也可以通过Fragment的getActivity()方法获取到所在的Activity并且调用Activity的getSupportFragmentManager()方法获取到FragmentManager,然后通过FragmentManager的beginTransaction()方法和replace()方法来实现Fragment之间的跳转。例如,以下代码可以在一个Activity中启动一个新的Activity:
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
startActivity(intent);
以下代码可以在一个Fragment中跳转到另一个Fragment:
FragmentTransaction transaction = getActivity().getSupportFragmentManager().beginTransaction();
transaction.replace(R.id.fragment_container, new AnotherFragment());
transaction.addToBackStack(null);
transaction.commit();
相关问题
android studio fragment跳转activity
要在 Fragment 中跳转到另一个 Activity,可以使用 Intent。以下是一个例子:
```java
// 在 Fragment 中跳转到另一个 Activity
Intent intent = new Intent(getActivity(), AnotherActivity.class);
startActivity(intent);
```
其中,`getActivity()` 方法会返回当前 Fragment 所在的 Activity。`AnotherActivity.class` 是你要跳转到的 Activity 的类名。
如果你需要传递数据到目标 Activity,可以在 Intent 中使用 `putExtra()` 方法,例如:
```java
// 传递数据到目标 Activity
Intent intent = new Intent(getActivity(), AnotherActivity.class);
intent.putExtra("key", value);
startActivity(intent);
```
在目标 Activity 中可以使用以下代码获取传递过来的数据:
```java
// 获取传递过来的数据
Bundle extras = getIntent().getExtras();
if (extras != null) {
String value = extras.getString("key");
}
```
注意,如果你要在目标 Activity 中返回数据给 Fragment,可以使用 `startActivityForResult()` 方法启动目标 Activity,并在目标 Activity 中调用 `setResult()` 方法返回数据。在 Fragment 中需要重写 `onActivityResult()` 方法来接收返回的数据。
阅读全文