fragment传值给Activity
来源:互联网 发布:薛家 知乎 编辑:程序博客网 时间:2024/06/10 17:36
本人才疏学浅,如有错漏,希望大家指正批评,大家一起进步,谢谢^0^
一、如何从fragment传值到Activity
先上一张大概的流程图:
总共两步:1、通过回调接口,将值从fragment传递给宿主activity
2、通过Intent或者Bundle将值从宿主Activity传给另一个Activity
具体关键代码:
//--------------------------------------------fragment--------------------------------------------------------------
private callbackValue Interface_callback;//回调接口,用来和activity互通信息
/**
* 回调接口,用来传记数值给目标activity,经过中介(父类activity)再向目标值传递
* @author asus
*
*/
public interface callbackValue
{
public void sendDataOfRecord(List<RecordItem> data,int kinds);
}
/**
* 这是与activity相关联的方法
*/
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
Interface_callback = (callbackValue)activity;
}
//---------------------------------------------------宿主Activity-----------------------------------------
public class HomeActivity extends FragmentActivity implements callbackValue{
private ViewPager mViewpager;
private TabPageIndicator indicator;
private Context context;
private String[] Titles = {"展示","搜索","下载","记录"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//替换fragment代码略
}
@Override
public void sendDataOfRecord(List<RecordItem> data,int kinds) {
Intent intent = new Intent();
intent.putExtra("data", (Serializable)data);
intent.putExtra("kinds", kinds);
intent.setClass(context,LineChartActivity.class);
startActivity(intent);
}
//-----------------------------------------------------要传值的Activity-------------------------------------
public class LineChartActivity extends ActionBarActivity {
private ArrayList<Integer> List = new ArrayList<Integer>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_line_chart);
Intent intent = getIntent();
ArrayList<RecordItem> data = (ArrayList<RecordItem>) intent
.getSerializableExtra("data");//获取intent中的数据
}
- Activity传值给Fragment
- fragment传值给Activity
- fragment 传值给activity
- Activity或Fragment传值给Fragment
- fragment传值给activity:接口
- Activity传数据给fragment
- Activity给Fragment传参
- ViewPager + Fragment取消预加载以及Activity传值给Fragment
- Android实用方法— ViewPager + Fragment取消预加载以及Activity传值给Fragment
- activity给fragment传递数据
- Activity传递Binder给Fragment
- EventBus:Activity给Fragment传值
- Andriod Fragment---给Activity添加一个Fragment
- Andriod Fragment---给Activity添加一个Fragment
- Andriod Fragment---给Activity添加一个Fragment
- Fragment之实现Activity给Fragment传参
- Andriod Fragment---给Activity添加一个Fragment
- Activity给自己下面其中一个Fragment传数据
- Java注解简单介绍
- 学习Java第一天
- DialogFragment宽度问题处理
- linux-export
- STL-算法总结
- fragment传值给Activity
- MVC设计模式
- Class类文件加载机制
- Qt例子一 AddressBook测试学习
- Java day02 类型转换(2)
- POJ 1325 Machine Schedule(二分匹配-hungary)
- @SuppressWarnings("resource")
- iOS-Block的总结
- Java类文件的基本结构