千家信息网

Android中碎片的使用方法详细介绍

发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,本篇内容主要讲解"Android中碎片的使用方法详细介绍",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Android中碎片的使用方法详细介绍"吧!Frag
千家信息网最后更新 2025年02月03日Android中碎片的使用方法详细介绍

本篇内容主要讲解"Android中碎片的使用方法详细介绍",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Android中碎片的使用方法详细介绍"吧!

Fragment的使用

其实碎片很简单,但是网上胡乱充数的博文太多了,以至于我们有时候觉得比较乱,今天就来简单讲解一下碎片的使用.碎片的使用分为两种,静态添加碎片和动态添加碎片,我们就先来看一下静态添加碎片如何实现.

静态添加碎片

首先,先建两个Layout文件,这就是碎片的布局文件,大家可能也发现了,Android Studio里面可以直接快速建立碎片,就像Activity一样,但是这样会生成很多没用的代码,所以我们还是选择自己创建碎片布局.

两个布局都很简单,里面只有一个居中显示的TextView,下面贴一下代码.

第一个布局文件:fragment_first.xml

第二个布局文件fragment_second.xml

现在布局文件建完了,我们该建立他们对应的Fragment了,也就是后台代码了。新建两个类,分别叫FirstFragment和SecondFragment,都继承于Fragment,需要注意一点,我们教程里面所使用的Fragment全都是android.support.v4.app.Fragment这个包下的,这样更有利于程序的兼容性.

贴一下两个类的代码,也很简单,只是重写了onCreateView方法来加载不同的布局文件.

public class FirstFragment extends Fragment {private View view;//得到碎片对应的布局文件,方便后续使用//记住一定要重写onCreateView方法@Nullable@Overridepublic View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {view = inflater.inflate(R.layout.fragment_first, container, false);//得到对应的布局文件return view;}}public class SecondFragment extends Fragment {private View view;//得到碎片对应的布局文件,方便后续使用//记住一定要重写onCreateView方法@Nullable@Overridepublic View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {view = inflater.inflate(R.layout.fragment_second, container, false);//得到对应的布局文件return view;}}

好,基本的工作我们做完了,现在我们用两个Activity展示如何静态添加碎片和动态添加碎片.

静态添加控件的话,需要使用fragment控件,指定其名称是你刚才创建的Fragment就可以,让我们来看一下.

先贴一下第一个Activity的布局:

其中那个按钮是用来跳转到下一个界面的,也就是动态添加碎片案例的Activity,在这里可以忽略.

这里我们看见了,两个fragment分别指定name为FirstFragment和SecondFragment,也就是你刚才创建的两个Fragment,一定要记得加上包名.对了,还有一个问题,就是这样的话是没有预览的,如果想要预览,需要在fragment标签中加上一句代码:

Tools:layout="@layout/布局文件名称" .

好了,静态添加碎片就完成了,什么?就这么简单,对啊...就这么简单.

动态添加碎片

动态添加碎片我们就不需要用fragment控件了,而是需要用个FrameLayout控件,这是为什么呢,首先我们都知道FrameLayout中的控件,都是从左上角开始显示,不用进行位置控制,动态添加碎片其实就是向容器里面动态添加碎片,而fragment控件只能用来静态绑定一个碎片.

先贴一下第二个Activity的布局:

上面的两个按钮用来加载不同的碎片,而下面的FrameLayout就是碎片显示的容器.

废话不多说,贴代码:

import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentTransaction;public class SecondActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_second);//点击第一个按钮的时候加载第一个碎片findViewById(R.id.second_btnLoadFirst).setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {FragmentManager fragmentManager = getSupportFragmentManager();FragmentTransaction transaction = fragmentManager.beginTransaction();transaction.replace(R.id.second_fl, new FirstFragment());transaction.commit();}});//点击第二个按钮的时候加载第二个碎片findViewById(R.id.second_btnLoadSecond).setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {getSupportFragmentManager().beginTransaction().replace(R.id.second_fl, new SecondFragment()).commit();//简写}});}}

getSupportFragmentManager方法用来获得一个碎片管理器对象(使用这个方法的时候注意是android.support.v4.app包下的哦),然后通过这个方法开始一个碎片事物对象,这个对象比较关键,可以用来动态添加碎片,调用它的replace方法,会把指定容器里面的其他控件全部清除掉,然后添加新的碎片进去.在这里就是先把R.id.second_f1里面的控件清空,然后添加传入一个FirstFragment进去.

替换完之后一定要记得调用commit方法提交,要不然你的所有操作都不会生效,切记.

到此,相信大家对"Android中碎片的使用方法详细介绍"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

碎片 布局 方法 文件 两个 动态 控件 静态 代码 就是 按钮 使用方法 也就是 容器 对象 时候 不同 内容 名称 完了 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全试题及答案6 闵行区上门软件开发定制介绍 本地服务器的数据库ip地址 超市管理系统数据库设计表 数据库系统有哪三层模式结构 固定ip地址连接服务器无响应 瑞通云信服务器 数据库管理系统题材 潮汕手机软件开发怎么样 网络安全风险评估的原则 广东商城软件开发报价 渭南市二调数据库 手游穿越无法连接到本地服务器 政府网络安全防护方案 部队网络安全保密心得 福建联想服务器虚拟化定制云空间 数据库系统不包括应用系统 php数组读取数据库中 小皮怎么远程连接数据库失败 化学虚拟仿真实验室软件开发 福建质量网络技术咨询常见问题 三级网络技术好学吗 高科技的互联网五期 镇江丹橙网络技术有限公司笔试 银行软件开发例子 数据库编号多长 mysql 数据库大小写 扬州网络安全市场报价 区块链数据库建设 移动终端软件开发需要考哪些证书
0