一起Talk Android吧(第五十回:Android中的Fragment嵌套一)

本文详细介绍在Android开发中如何实现Fragment间的静态嵌套,包括创建布局文件及类,并通过代码示例展示如何将FragmentB嵌入FragmentA中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


各位看官们,大家好,上一回中咱们说的是Android中Fragment的例子,这一回咱们继续说该例子。闲话休提,言归正转。让我们一起Talk Android吧!


看官们,我们在上一回中介绍了嵌入在同一个Activity中的两个Fragment如何进行交互,接下来我们将介绍两个嵌套的Fragment如何进行交互,不过在介绍之前,我们先来谈一谈两个Fragment之间如何进行嵌套。这便是本章回的内容。

两个Fragment之间的嵌套类似Fragment加载到Activity中间,它有两种嵌套方式:

  • 一种是静态嵌套,
  • 一种是动态嵌套。

今天我们先来看看静态嵌套,静态嵌套的方式和Activity中静态加载Fragment类似,只需要在FragmentA的布局文件中使用fragment标签的name属性就可以,接下来我们通过代码结合说明的风格来介绍。

  • 1.创建一个名为fragment_a的布局文件,该文件就是FragmentA的布局文件,至于布局文件中的内容,可以自己去定义;
  • 2.创建一个名为fragment_b的布局文件,该文件就是FragmentB的布局文件,至于布局文件中的内容,可以自己去定义;
  • 3.创建一个名为FragmentB的类,该类继承自Fragment,接着重写该类的onCreateView方法, 具体的代码为:
public class FragmentB extends Fragment {  	//重写onCreateView方法
  public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 	
   View view =
   inflater.inflate(R.layout.fragment_b,container,false);
   //fragment_b就是刚才创建的布局文件 	return view; 	
 } 	
 //override other callback 
}
  • 4.通过修改FragmentA的布局文件,使用fragment标签的name属性把刚才创建的FragmentB和FragmentA关联起来,具体的代码为:
  <LinearLayour ...>    //这是FragmentA的布局文件 	
  <fragment    
   //使用fragment标签以及它的name属性  	
       	android:id=... //这个不可少,算是Fragment的“身份证”
   		android:name="packagename.FragmentB" 
   //使用name属性来关联。赋值时使用包名.类名。包名是自己程序的包名,类名是步骤3中创建的类名。
   .... 
   //其它长度,宽度等大小属性省略不写
   	>
   	
   </LinearLayour>

看官们,以上就是Fragment之间静态嵌套方法,它和Activity中静态加载Fragment的方法十分类似,不过有一点不同之处就是我们在这里没有写出Activity的布局文件,FragmentA是不能单独使用的,它需要加载到Activity中的,至于使用静态加载还是动态加载,我们不关心,因为使用哪种方式都一样。今天就说一种嵌套方法,我们将在下一章回中介绍动态嵌套Fragment的方法。


各位看官,关于Android中Fragment的例子咱们就介绍到这里,欲知后面还有什么例子,且听下回分解!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

talk_8

真诚赞赏,手有余香

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值