首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏编程思想之路

    activity嵌套fragmentfragment内嵌fragment之间传值切换fragment

    至于fragment的用法,fragment+viewpager的滑动切换代码请参考博文 Android基础:翻页控件Viewpager的使用方法,viewpager+fragment混合使用 fragment 与Activity 当在使用activity嵌套fragmentfragment再嵌套子fragment时,相当于有两层fragment,假设最外层为第一层,其中一个Fragment为ParentfragmentA ,该ParentFragmentA中又嵌套了三个fragment,也就是说第二层为ChildFragment1,ChildFragment2,ChildFragment3,如果想在其中一个子fragment 中的控件点击切换到同一层的另一个子fragment 如图,在第二层fragment中,child1fragment中有两个控件viewI和viewII,点击viewI可以切换到同一层的fragment 是另一个fragment的子fragment,则获取到的是父fragment的manager getChildFragmentManager方法:获取到外层fragment的子fragment的manager

    1.4K12编辑于 2022-05-07
  • 来自专栏小陈飞砖

    Fragment

    区别 二、Fragment的生命周期 三、Fragment的通信 四、Fragment的replace、add、remove 五、Fragment的管理器FragmentManager 一、Fragment 为何被称为第5大组件 1、为何称为第5组件 1)、fragment具有生命周期 2)、fragment比activity更节省内存,ui的切换效果也更加的舒适; 3)、但是fragment必须依附于 三、Fragment的通信 四、Fragment的replace、add、remove 1、add()是将Fragment实例添加到activity的Fragment队列的最上层 2、remove( )是将Fragment实例从到activity的Fragment队列中删除 3、replace:内部线remove(实例会被回收掉)然后再add,会始终保持fragment栈中只有一个fragment 因为,detach不会回收fragment,但是会回收fragment中的view。atach会将fragment中的view重新创建。既不剩内存,也不提高性能。

    89720编辑于 2022-06-25
  • 来自专栏云计算linux

    Fragment

    坚持AUF(Always Use Fragment)原则,即总是使用FragmentFragment本身占用内存比Activity少很多,在流畅性,性能上具有很大的优势,尤其是在中低端手机上。 此外,如果你的应用需要移植到平板上的话,那使用Fragment更是你的不二之选。 3.是什么? Frament也叫碎片,片段。 如果我们不使用Fragment的情况,当应用运行在平板上面的情况,就只能显示放大版的手机显示的界面,为了利用平板的特性,Android在3.0版本中提供了Fragment技术,我们就可以将列表与内容以组件的方式插入 " /> <fragment android:layout_width="0dp" android:layout_height="match_parent" " /> </LinearLayout> 5.2 left_fragment.xml <?

    40810编辑于 2024-12-19
  • 来自专栏程序员互动联盟

    【Android基础】Fragment 详解之Fragment介绍

    Fragment可以看作是嵌套的Activity,类似ActivityGroup,但是开销肯定没有ActivityGroup那么大,每一个Fragment管理着一个View,Fragment彼此之间相互独立 然后当Activty进入运行状态onResume后,你可以独立的管理每一个Fragment,可以add一个Fragment,也可以remove一个Fragment。 在你执行一个Fragment事务的时候(创建并且显示出来),你可以把这个Fragment放到Fragment回退栈中,这个回退栈记录了所有你执行过的Fragment事务,用户在点击返回键的时候可以从Fragment Fragment的生命周期: 如果你很清楚Activity的生命周期那么Fragment的生命周期就很容易理解,在Fragment中有很多类似Activity生命周期函数的回调方法,这些方法由Android onCreateView(): 当Fragment需要第一次绘制用户界面的时候系统调用这个函数完成UI的绘制,你必须在这个函数返回一个View,这个View是Fragment的根View,如果你不想Fragment

    1.5K80发布于 2018-03-14
  • 来自专栏Android开发者家园

    再谈Fragment

    Fragment 就是一个 Activity 布局的一部分,可以把 Activity 的一部分布局抽离出来到 Fragment 中,并且 Fragment 也可以执行逻辑。 如果用 Fragment 就灵活多了,Activity 只需要根据导航显示对应的 Fragment 就可以了。 如果别的地方需要某一个模块,直接拿出对应的 Fragment 就可以了。 Fragment 相关的三个类 Fragment 具体的 Fragment FragmentManager 是管理 Fragment 的 FragmentTransaction 通过事务来进行添加 Fragment 、隐藏、移除 等操作 Fragment 动作,事务保证了原子性 主要方法 transaction.add() 向 Activity 中添加 Fragment,只是添加 Fragment,不影响之前 Fragment " /> 在代码中获取的这个 Fragment 通过 Fragment fragment = getSupportFragmentManager().findFragmentById(R.id.fragment

    1.2K20发布于 2020-09-24
  • 来自专栏Android理论

    fragment中使用viewpager嵌套fragment

    步骤: 1、在Activity布局文件中定义framelayout用于添加Fragment 2、创建两个Fragment用于切换 3、获取Fragment管理器,并开启事物FragmentTransaction 4、通FragmentTransaction.add(resource id, fragment)将fragment添加到布局上,提交事物commit 5、通FragmentTransaction. replace(resource id, fragment)切换显示的fragment,提交事物commit acvitity_dynamic.xml <Button android fragment=blank; } transaction1.replace(R.id.fl_fragment,fragment); transaction1.commit(); } }); Fragment中嵌套fragment问题 在fragment中使用viewpager嵌套fragment

    1.4K50编辑于 2021-12-10
  • 来自专栏全栈程序员必看

    android之cannot convert from Fragment1 to Fragment

    在写一个音乐播放器的时候,用到了fragment,结果在需要返回Fragment的方法里面,无法将Fragment1(Fragment的子类)强制转换成Fragment, 很是纳闷,我是参照一个开源代码来做的 ,源码里面很正常,我这里却报错, 后来才发现,是对包的导入出现了差错,在Fragment1中导入的是android.app.Fragment 而在出错的那个类里面是用android.support.v4 .app.Fragment,包不同当然无法转换 后来统一导入为android.support.v4.app.Fragment之后就正常了.

    59120编辑于 2022-07-20
  • 来自专栏小工匠聊架构

    Fragment初识

    另外不建议在Fragment里面 嵌套Fragment因为嵌套在里面的Fragment生命周期不可控!!! 和replace的参数是Fragment,这个Fragment目标Fragment一致 注意:Activity动态的添加Fragment必需有一个容器View来容纳Fragment的layout布局 操作步骤 ---- Fragment管理与Fragment事务 ? ---- Fragment与Activity的交互 ? 组件获取 Activity中获取Fragment,以及Fragment中的组件 获取Fragmentfragment被提交之后,【fragmentTransaction.commit()提交fragment ---- ③FragmentFragment之间的数据互传 找到要接受数据的fragment对象,直接调用setArguments传数据进去就可以了 通常的话是replace时,即fragment

    1.7K20发布于 2021-08-16
  • 来自专栏风吹杨柳

    fragment的模板

    **/ public void addFragment(Fragment fragment) { FragmentTransaction ft = this.getSupportFragmentManager ().beginTransaction(); ft.add(R.id.show_layout, fragment); ft.commit(); } /** 删除Fragment **/ public void removeFragment(Fragment fragment) { FragmentTransaction ft = this.getSupportFragmentManager (Fragment fragment) { FragmentTransaction ft = this.getSupportFragmentManager().beginTransaction(); fragment) { try { btnCallListener = (IBtnCallListener) fragment; } catch (Exception e) { }

    1.4K20编辑于 2022-03-07
  • 来自专栏tea9的博客

    android-fragment

    left_fragment.xml <?xml version="1.0" encoding="utf-8"? "/> </LinearLayout> 建立LeftFragment 继承Fragment v4包 重写onCreateView方法 View view = inflater.inflate(R.layout.left_fragment android:id="@+id/left_fragment" android:name="com.example.fragmenttest.LeftFragment" replaceFragment(new RightFragment()); private void replaceFragment(Fragment fragment) { FragmentManager (null); 活动跟碎片通信 LeftFragment fragment = (LeftFragment) getFragmentManager().findFragmentById(R.id.left_fragment

    92310编辑于 2022-07-16
  • 来自专栏linux驱动个人学习

    Fragment基本使用

    从官方的定义可以得到: Fragment依赖于Activity,不能独立存在 一个Activity可以有多个Fragment 一个Fragment可以被多个Activity重用 Fragment有自己的生命周期 1.2 Fragment基本生命周期 ? Fragment的一般生命周期如上图所示: onAttach():Fragment和Activity相关联时调用。 在介绍Fragment的具体使用时,先介绍一下Fragment的几个核心类 FragmentFragment的基类,任何创建的Fragment都需要继承该类 FragmentManager:管理和维护 Fragment使用 使用Fragment有两种方式,分别是静态加载和动态加载 2.1 静态加载 关于静态加载的流程如下: 定义Fragment的xml布局文件 自定义Fragment类,继承Fragment 4.1 传递数据给Fragment 步骤流程: 在Activity中创建Bundle数据包,调用Fragment实例的setArguments(),将Bundle数据包传给Fragment Fragment

    2.6K30发布于 2021-04-20
  • 来自专栏向治洪

    Fragment详解

    ##生命周期 onAttach()(Fragment被绑定到Activity时调用) —> onCreate()(Fragment创建) –> onCreateView()(创建和Fragment关联的 ); } } 每一个fragment 都需要一个唯一的标识,如果activity重启,系统可以用来恢复fragment(并且你也可以用来捕获fragment 来处理事务,例如移除它.) , firstFragment).commit(); } } } ##管理Fragment 要在activity中管理fragment,需要使用FragmentManager. activity 中存在的fragment 2. ##Fragment与ViewPager搭配 FragmentStatePagerAdapter,会自动保存和恢复Fragment

    1.3K70发布于 2018-01-26
  • 来自专栏Android干货园

    你真的会用Fragment了么?-Fragment解析

    我们可以唉Activity中随意的使用Fragment,当你的一个界面业务逻辑很复杂的时候,我们可以将逻辑写到Fragment中,这样就不必在Activity写一堆控件的事件处理的代码了,Fragment Fragment生命周期 Fragment生命周期和Activity生命周期类似,只是比Activity多了几个回调方法而已。 Fragment使用 Fragment使用分为两种:静态和动态 静态使用Fragment 所谓静态使用指的就是将自定义的Fragment写到xml布局文件中,利用<fragment></fragment 动态使用Fragment 动态使用Fragment就是手动在代码中添加、更新、删除Fragment。 下面我们来看一下在使用Fragment时遇到的那些坑吧: 对于FragmentManager我们应该知道它的作用,它用来维护Fragment队列,以及Fragment事务的回退栈。

    1.6K10发布于 2018-09-06
  • 来自专栏everhad

    札记:Fragment基础

    可以通过在Activity的layout中使用 定义Fragment子类 类似定义Activity那样,通过继承Fragment类来定义一个fragment类型。 Fragment的管理 上面简单的在代码中添加了一个Fragment到当前Activity。这里对可以针对Fragment执行的各种操作进行总结。 hide(Fragment fragment) 当参数fragment的View已经添加到布局容器中时,可以通过此方法来隐藏对应的View。 fragment) Remove an existing fragment. here. show (Fragment fragment) Shows a previously hidden fragment.

    1.5K60发布于 2018-01-08
  • 来自专栏全栈程序员必看

    Fragment 的 onResume()

    /** * 1.Fragment第一次创建时调用 * 2.切换程序(如点了Home键)后恢复Fragment可见时调用 * 3.切换fragment的hide和visible的时候可能不会调用 public void onPause() { if (isVisible()) { onHidden(); } super.onPause(); } /** * 1.Fragment 在程序内隐藏或显示时调用时 * 2.默认fragment创建的时候是可见的,但是不会调用该方法 * 3.调用onResume,onPause的时候却不会调用此方法 * @param hidden */

    73730编辑于 2022-09-05
  • 来自专栏编程思想之路

    fragment与Activity

    写这篇文章  主要解决4个问题,有需要的可以看下 1,fragment到底是什么东西,与Activity的关系 2,fragment的lifecycle 3,fragment之间的切换 4,fragment 传值到Activity Chapter One fragment 概念       fragment到底是什么东西呢? 一个Activity界面可以有多个fragmentfragment只能依赖于Activity而存在,像寄生虫一样。 Chapter Two fragment的生命周期    既然fragment依赖于Activity存在,那么fragment的生命周期与Activity息息相关,也就不难理解了。 fragment,如下, fragment_first.xml文件 <?

    51520编辑于 2022-05-06
  • 来自专栏Android理论

    ViewPager嵌套fragment

    ViewPager嵌套Fragment 新建4个Fragment; 新建ViewPagerAdapter继承FragmentPagerAdapter; public class ViewpagerAdapter extends FragmentPagerAdapter { private ArrayList<Fragment> arrayList; public ViewpagerAdapter (@NonNull FragmentManager fm,ArrayList<Fragment> arrayList) { super(fm); this.arrayList ()); arrayList.add(new Fragment2()); arrayList.add(new Fragment3()); arrayList.add 相关视频 【Android进阶】ViewPager嵌套fragment架构解析

    1K60编辑于 2021-12-21
  • 来自专栏计算机工具

    Activity与Fragment 以及使用接口 fragment向activity床底消息

    Fragment是Android honeycomb 3.0新增的概念,Fragment名为碎片不过却和Activity十分相似。    Fragment是用来描述一些行为或一部分用户界面在一个Activity中, (1)你可以合并多个fragment在一个单独的activity中建立多个UI面板, (2)同时重用fragment在多个activity 处理Fragment的生命周期 宿主activity的声明周期直接影响到fragment的生命周期。   onCreate() 当fragment创建时被调用,你应该初始化一些实用的组件,比如在fragment暂停或停止时需要恢复的 onCreateView() 当系统调用fragment在首次绘制用户界面时 例如,一个新闻显示应用在一个activity中有两个fragment,一个fragment A显示文章题目的列表,一个fragment B显示文章。   

    42010编辑于 2024-12-16
  • 来自专栏程序员互动联盟

    【Android基础】Fragment 详解之Fragment生命周期

    onDestroyView(): 当与Fragment关联的那个View(在onCreatView()方法中创建的)与Fragment解除关联,从View树中移除的时候调用,在下次Fragment需要显示一个 Stopped: Fragment不再可见,此时的情形可能是Fragment所在的Activity已经stopped了,或者fragment从Activity中移除到Fragment回退栈中。 与Activity类似,你可以利用Bundle来记录Fragment的状态,当Activity被销毁需要记录Fragment状态,并且在Activity重新创建的时候恢复Fragment的状态。 上面说的都是Fragment的一些生命周期相关知识,下面来看看如何创建Fragment并且添加一个View给Fragment。 以上就是Fragment的生命周期和如何创建一个Fragment的View

    5.4K80发布于 2018-03-14
  • 来自专栏开心的学习之路

    Android之Fragment

    Fragment 在4.2.版本中新增嵌套fragment使用方法,能够生成更好的界面效果。 Fragment的生命周期 你可以把fragment看作是activity的模块化组件,它拥有自己的生命周期 Fragment是activity的界面中的一部分或一种行为。 . onStart()方法会让Fragment对象显示给用户(在包含该Fragment对象的Activity被启动后); 6. onResume()会让Fragment对象跟用户交互(在包含该Fragment 因为Fragment对象所依附的Activity对象被挂起,或者在Activity中正在执行一个修改Fragment对象的操作,而导致Fragment对象不再跟用户交互时,系统会调用Fragment对象的 因为Fragment对象所依附的Activity对象被终止,或者再Activity中正在执行一个修改Fragment对象的操作,而导致Fragment对象不再显示给用户时,系统会调用Fragment对象的

    84420发布于 2019-05-26
领券