各位看官们,大家好,上一回中咱们说的是Android中Fragment的例子,这一回咱们继续说该例子。闲话休提,言归正转。让我们一起Talk Android吧!
看官们,前面章回中我们介绍了如何在Activity中加载Fragment,并且介绍了两种加载方法。Fragment加载到Activity中后我们该如何去使用它呢?这便是本章回的内容。
看官们,要想在Activity中使用Fragment,那么就需要先获取Fragment
对象,然后去使用它。如何获取?其实和在Activity中获取控件的方法一样:我们通常使用findViewById
方法获取某个控件,类似地使用findFragmentById
方法就可以获取到Fragment对象。不过该方法是FragmentManager
提供的,不能在Activity中直接使用,因此我们还需要获取FragmentManager对象,真是环环相扣呀。
其实获取FragmentManager对象也是比较容易的,只需要在Activity中使用getFragmentManager
或者getSupportFragmentManager
方法就可以获取到它。通常在项目中,我们使用后者来获取FragmentManager对象,因为它是support库中提供的方法,而getFragmentManager是SDK中提供的方法,它对Android版本的兼容性比getFragmentManager要好一些。
现在大家应该明白如何使用Fragment了吧,不过这么逆着分析可能让有些看官觉得不好理解,不要担心,我们还是代码结合文字的风格来进行说明,具体如下:
- 1.在Activity中获取FragmentManager对象,代码如下:
FragmentManager fm = getSupportFragmentManager();
- 2.通过FragmentManager对象来获取Fragment对象,代码如下:
Fragment mFragment = (Fragment)fm.findFragmentById(R.id.frag_name);
//这里的fm是步骤1中获取到的FragmentManager对象,fra_name是Fragment布局文件中Fragment的控件id
- 3.通过Fragment对象使用Fragment中的方法,代码如下:
mFragment.func(); //这里的func是Fragment对象中方法,可以使用support库中的方法,也可以是自己定义的方法。
看官们,通过上面的步骤是不是觉得更加清晰一些。相信大家都有这样的感觉。大家再回顾一下以前的内容就会发现,Fragment的使用和普通控件的使用是类似的。比如常用的控件TextView,也是先从布局中获取的它的对象,然后通过对象来使用它里面的方法。这么进行对比分析后,大家就是觉得学习起来既能学到新知识又能巩固旧知识,真是一举两得呀!
各位看官,关于Android中Fragment的例子咱们就介绍到这里,欲知后面还有什么例子,且听下回分解!