Android开发中Activity和Fragment的通信方式分析
2021-06-30西安电子科技大学机电工程学院郭雨佳韩雨辰赵明英朱俊杰
西安电子科技大学机电工程学院 郭雨佳 韩雨辰 赵明英 朱俊杰
在现有智能手机操作系统中,Android占绝对主导地位。Activity是Android四大组件之一,Fragment是一种嵌套在Activity中的UI组件。由于多个Activity的进栈出栈会造成程序卡顿,所以实际开发的时候,为了达到更好的用户体验大多会使用Fragment来设计用户交互界面。正因如此,Activity和Fragment之间的通信便显得尤为重要。本文分析了两者间的多种通信方式,提出接口回调方式是进行通信的最佳方式。
在Android程序设计中,Activity是重要的控件之一。一个Activity就代表了应用程序中的一个页面。每次点击页面进行跳转的时候,需要将当前的Activity的状态保存至堆栈,下次使用的时候再从堆栈中取出来展示给用户。这样不断的进出堆栈,将会导致应用程序运行过程中出现卡顿,严重影响用户体验。为了解决这一问题,Android系统引入了Fragment。Fragment并不是一个独立的部分,是一种可以嵌入到Activity中的UI控件。Fragment的出现使在同一个Activity上进行界面的切换成为现实。
1 Fragment简介
1.1 创建
创建Fragment的方法有动态和静态两种。前者就是通过Java代码来创建Fragment的实例,后者则是在编写Activity的xml布局文件时通过<fragment>标签实现控件的创建。
动态创建的具体步骤:
第一步:在当前Activity的布局文件中创建FrameLayout并为其设置id;

第二步:鼠标移动到当前包名处并单击右键,选择new->Fragment->Blank Fragment,创建新的Fragment;
第三步:在Activity的onCreat()方法中使用代码将fragment添加到FrameLayout。

静态创建的具体步骤:
第一步:鼠标移动到当前包名并单击右键,选择new->Fragment->Blank Fragment,创建新的Fragment;
第二步:在在xml文件中创建fragment控件,并通过name属性引入fragment文件,同时可以为fragment创建一个id,以便后续的使用。……p>
