Fragment的跳转
1. 设置主Fragment
其它fragment得到它就可以了。
1 val ft = fragmentManager?.beginTransaction()
2 val maiFrgmt = MainFrgmt()
3 ft?.replace(R.id.main,maiFrgmt,"MainTag")?.setPrimaryNavigationFragment(maiFrgmt)?.commitAllowingStateLoss()
其它fragment中
1 var mainFrgmt = requireFragmentManager().primaryNavigationFragment
2.根据Tag,Id查找目标Fragment
查找MainFrgmt示例:
1 val main2 = requireFragmentManager().findFragmentByTag("MainTag")
3.Fragment中共享view
1 val ft = fragmentManager?.beginTransaction()
2 val maiFrgmt = MainFrgmt()
3 requireFragmentManager().beginTransaction().addSharedElement(maiFrgmt.mViewPager2,"MainTag").commit()
4.通过Activity
Fragment之间共用宿主activity
Fragment的跳转的更多相关文章
- Android学习笔记(七)两个Fragment简单跳转示例
在前两篇博文中分别介绍了Fragment得基础和Fragment的生命周期,然而说了这么多Fragment到底怎么用呢以及我们为什么要使用Fragment?本篇博文将主要探讨这两个问题,首先说下在AP ...
- 两个fragment之间简单的跳转
1.在第一个fragment中开启事务,设置标记 Toast.makeText(getActivity(), "切换到下一个fragment中", Toast.LENGTH_SHO ...
- [转]Fragment跳转至Activity或者Fragment
1.Fragment跳转至Activity 从fragment中跳转和从activity中跳转类似,只不过你要先通过fragment的getActivity方法获取到显示这个fragment的acti ...
- Fragment 创建 传递参数 跳转【典例】
Fragment一定要有一个无参的构造方法! 因为当Activity因屏幕旋转或者因内存不足被系统杀死时,会导致Activity被重新创建,而当Activity被重建时,FragmentManager ...
- Fragment
Fragment 是轻量级的,比Activity 快,适合同一个APP 内页面的跳转. 1: 在MainActivity 中启动一个fragment BlankFragment: public cl ...
- Android Fragment实现分屏
在项目中碰到一个问题,新开发一个平板APP,项目要求是把原来的一个手机端APP放在项目左侧显示,右侧添加新加的功能. 首先想到了Fragment,以前做过Fragment的一些简单的Demo,但是都没 ...
- 两个activity或者activity和fragment传值
使用Fragment的时候可能需要在两个Fragment之间进行参数的传递,开始想着可以使用SharedPreferences进行处理,想想这些简单的参数没有必要使用这么麻烦的方式去实现,翻了一下Fr ...
- Android使用Fragment打造万能页面切换框架
首先我们来回顾一下传统用Activity进行的页面切换.activity之间切换.首先须要新建intent对象,给该对象设置一些必须的參数,然后调用startActivity方法进行页面跳转. 假设须 ...
- 在Tabbed Activity(ViewPager)中切换Fragment
我用Android Studio的向导新建了一个Tabbed Activity,里面是ViewPager样式的,有三个tabs.如下: 但是我尝试在第一个tab中设置一个按钮,打开其他tab的时候,却 ...
随机推荐
- 【BZOJ3307】雨天的尾巴 题解(树链剖分+树上差分)
题目链接 题目大意:给定一颗含有$n$个结点的树,每次选择两个结点$x$和$y$,对从$x$到$y$的路径上发放一带$z$类型的物品.问完成所有操作后每个结点发放最多的时哪种物品. 普通的树链剖分貌似 ...
- 行为驱动模型-Behave
行为驱动开发英文名为Behave Driven Development,简称BDD,是一种敏捷开发方法,主要是从用户的需求出发强调系统行为.将此模型借鉴到自动化测试中称其为行为驱动测试模型,它是一种通 ...
- 恢复HTML表格笔记
表格 语法: 标记: <table></table>:表示一个表格 属性: ...
- 正确认识springcloud的作用。分布式从了解架构到springcloud支撑
转载于 https://www.cnblogs.com/williamjie/p/9369681.html 基于springCloud的分布式架构体系 Spring Cloud作为一套微服务治理的 ...
- 微信公众号添加zip
微信公众号添加zip的教程 我们都知道创建一个微信公众号,在公众号中发布一些文章是非常简单的,但公众号添加附件下载的功能却被限制,如今可以使用小程序“微附件”进行在公众号中添加附件. 以下是公众号添加 ...
- 11 Linux(CentOS)用户与权限
用户管理 root 在root用户下可以进行以下操作 useradd 用户名 新增用户 userdel 用户名 删除用户,同时应该删除家目录下的用户文件,与邮箱目录下的用户文件 ...
- JS学习第一天
JS的三种引入方式: 内联:在标签属性中引入javascript:js代码 <a href="javascript:("helloworld")"& ...
- Linux下gcc/g++中-I(i的大写)、-L和-l
-I(i的大写)include头文件非标准库中存在的也不是在当前文件夹下的,需要将地址用-i(大写)包含例:-I /home/src/-L用到的函数或操作非标准库下的,需要将库存在的地址用-L包含,库 ...
- 极简 Node.js 入门 - 2.3 process
极简 Node.js 入门系列教程:https://www.yuque.com/sunluyong/node 本文更佳阅读体验:https://www.yuque.com/sunluyong/node ...
- 微信小程序setData局部刷新列表
利用setData局部刷新列表 当列表管理加载到第几页时,这个list的数据有十几条的,如果重新setData的话就要重新刷新和渲染列表, 这是个比较麻烦的事,当数据量大时,就会造成白屏, 这时就要局 ...