怎么实现fragment向activity传值
时间: 2023-06-05 11:06:48 浏览: 125
可以使用 Bundle 对象来实现 Fragment 向 Activity 传递值,具体步骤如下:
1. 在 Fragment 中创建 Bundle 对象,传递需要传递的值。
2. 在 Fragment 中使用 setArguments() 方法将 Bundle 对象设置为 Fragment 的参数。
3. 在 Activity 中使用 getIntent() 方法获取 Intent 对象,使用 getExtras() 方法获取 Bundle 对象。
4. 在 Activity 中获取 Bundle 对象中的值,完成值的获取。
需要注意的是,使用这种方式传递值,传递的值类型是受限的,只能传递支持序列化或 Parcelable 接口的对象。
相关问题
fragment向activity传值
可以通过Bundle来向Activity传值。在Fragment中创建一个Bundle对象,将需要传递的值放入Bundle中,然后调用Activity的setArguments方法将Bundle传递给Activity。在Activity中可以通过getArguments方法获取传递过来的值。具体步骤如下:
1. 在Fragment中创建Bundle对象,并将需要传递的值放入Bundle中:
```
Bundle bundle = new Bundle();
bundle.putString("key", "value");
```
2. 调用Activity的setArguments方法将Bundle传递给Activity:
```
MyActivity activity = (MyActivity) getActivity();
activity.setArguments(bundle);
```
3. 在Activity中通过getArguments方法获取传递过来的值:
```
Bundle bundle = getArguments();
String value = bundle.getString("key");
```
怎么用Fragment向activity传值
可以使用Bundle来向activity传值,首先在Fragment中创建一个Bundle对象,然后将需要传递的值添加到Bundle中,最后调用activity的setArguments()方法来设置Bundle。在activity中,可以通过调用getArguments() 方法来获取Bundle,进而获取需要的值。具体操作可以参考以下代码示例:
在Fragment中添加值到Bundle:
```
Bundle bundle = new Bundle();
bundle.putString("key", "value");
MyFragment fragment = new MyFragment();
fragment.setArguments(bundle);
```
在activity中获取Bundle:
```
Bundle bundle = getIntent().getExtras();
if(bundle != null){
String value = bundle.getString("key");
}
```
阅读全文