初学android开发--Fragment
2016-05-05 19:09
316 查看
Fragment(碎片)Fragment的创建1、自定义类继承Fragment2、复写onCreateView方法,返回view对象3、在Activity中添加显示此自定义Fragmentpublic View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState)@param inflater 布局填充器,使用它可以动态填充xml布局文件,并返回View对象@param container Fragment被包含的ViewGroup对象,Fragment的父布局@param Bundle 通过Bundle对象可以实现现场保护功能Fragment的显示#静态显示1、xml布局文件中使用<fragment>标签,声明需要显示的Fragment2、一定要添加id/tag,通过这个id/tag,可以用FragmentManager找到此Fragment3、指定name属性,它指向Fragment的绝对路径#动态显示1、xml布局文件中,创建Fragment的占位布局,通常使用FrameLayout2、java代码中,获取FragmentManager3、通过FragmentManager获取FragmentTransactionFragmentManager manager=getFragmentManager();FragmentTransaction transaction=manager.beginTransaction();4、通过FragmentTransaction可以对Fragment进行一系列操作5、调用FragmentTransaction.commit()提交事务Fragment与Activity之间的传值Activity->Fragment1、通过Fragment.setArgument可以向被添加Fragment对象中存储相应的数据2、初始化Bundle对象,并传入数据3、将bundle传给Fragment对象
<span style="font-size:14px;"><span style="white-space: pre;"> </span>FragmentManager manager = getFragmentManager();FragmentTransaction transaction = manager.beginTransaction();//通过Fragment.setArgument可以向被添加Fragment对象中存储相应的数据FragmentContent fragmentContent = new FragmentContent();//初始化Bundle对象,并传入数据Bundle bundle = new Bundle();bundle.putString("key", "这是从MainActivity中传进来的数据");//将bundle传给Fragment对象fragmentContent.setArguments(bundle);transaction.add(R.id.containerId, fragmentContent);transaction.commit();</span><span style="font-size: 14px;"></span>4、在自定义Fragment类中,通过bundle=getArguments()取出bundleFragment->Activity使用接口回调传值的方法,步骤:1、在Fragment中创建公共接口类,并创建此接口类的全局变量,例如private ItemClickCallback itemClickCallback;public interface ItemClickCallback{public void onItemClickCalled();}2、创建setInterface方法public void setItemClickCallback(ItemClickCallback itemClickCallback){this.itemClickCallback=itemClickCallback;}3、在宿主Activity中实现此接口,并实现抽象方法4、宿主Activity显示Fragment时,通过setItemClickCallback将Activity本身传入Fragment中的itemClickCallback需要判断宿主Activity是否已经实现内部接口Activity activity=getActivity();if(activity instanceof ItemClickCallback){setItemClickCallback((ItemClickCallback)activity);}
相关文章推荐
- [Android5.1]开机动画显示工作流程分析
- Android 开发四大基本组件之一——Activity详解
- Android应用优化_0.1版本
- 33.Android热修复技术:AndFix的使用方法
- android中的多进程模式(IPC)
- 查看Android内存情况的adb命令
- Android 自定义Toast
- Android Handler 消息响应机制源码分析
- android 引导用户指示操作 高亮显示 可以自定义文字或者图片来作为提示,文字会自动换行
- Android-设置PullToRefresh下拉刷新样式
- 【开源框架】Android之史上最全最简单最有用的第三方开源库收集整理,有助于快速开发,欢迎各位网友补充完善
- TabLayout简单使用
- android源码解析(十七)-->Activity布局加载流程
- Android H5判断是否安装app和唤起APP
- android 5.x—RecyclerView使用介绍
- Android Studio 2.x com.android.tools.fd.runtime.IncrementalChange $change
- activity保存状态和临时数据
- Android 屏幕(View)坐标系统
- Android 快速开发系列 打造万能的ListView GridView 适配器
- Android蓝牙开发