为了更方便的使用Frgment,使用扩展方法对其进行扩展,来简化其使用方式

  • 添加扩展函数

    inline fun FragmentManager.inTransaction(func: FragmentTransaction.() -> FragmentTransaction) = beginTransaction().func().commit()fun AppCompatActivity.addFragment(fragment: Fragment, frameId: Int) = supportFragmentManager.inTransaction { add(frameId, fragment) }fun AppCompatActivity.replaceFragment(fragment: Fragment, frameId: Int) = supportFragmentManager.inTransaction{replace(frameId, fragment)}复制代码
  • activity中进行调用

    addFragment(mFragment1, R.id.mFlContent)
    replaceFragment(mFragment2, R.id.mFlContent)
    复制代码

Kotlin 简化Fragment使用的扩展方法相关推荐

  1. Kotlin 特性 语法糖 优势 扩展 高阶 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  2. Kotlin学习笔记 第四章 解构声明 集合集合的扩展方法 Range 异常 Throw关键字

    参考链接 Kotlin官方文档 https://kotlinlang.org/docs/home.html 中文网站 https://www.kotlincn.net/docs/reference/p ...

  3. Kotlin扩展方法进化之Context Receiver

    /   今日科技快讯   / 近日,福特汽车公司宣布将削减总计3000个受薪和合同工职位,被裁员目标主要位于北美和印度.此举表明,该公司正在进行重组,以在开发软件驱动的电动汽车领域追赶特斯拉. /  ...

  4. kotlin - 扩展方法和扩展属性

    kotlin - 扩展方法和扩展属性 我们都知道java要扩展一个已有类的方法和属性必须采用继承.组合或直接修改现有类来进行功能和属性的扩展.而kotlin是完全支持扩展方法和扩展属性的,这样我们就可 ...

  5. 使用扩展方法和静态门面类实现伪领域对象

    背景介绍 领域对象,在此特指充血的领域对象模型,在解决什么是伪领域对象之前,需要事先解释何为充血的领域对象.在此后的介绍中,假设我们存在对象模型Employee-Department. 在面向对象的实 ...

  6. C#扩展方法应用之 try catch finally 封装

    本文将介绍如何利用扩展方法将 try catch finally 语句块简化成如下的调用形式: public void Test1(){Employee emp = new Employee();em ...

  7. 你真的了解扩展方法吗?

    定义 微软对于扩展方法的定义是: 扩展方法使你能够向现有类型"添加"方法,而无需创建新的派生类型.重新编译或以其他方式修改原始类型.扩展方法是一种静态方法,但可以像扩展类型上的实例 ...

  8. Linq 下的扩展方法太少了,您期待的 MoreLinq 来啦

    一:背景 1. 讲故事 前几天看同事在用 linq 给内存中的两个 model 做左连接,用过的朋友都知道,你一定少不了一个叫做 DefaultIfEmpty 函数,这玩意吧,本来很流畅的 from. ...

  9. 扩展方法 枚举值_扩展枚举功能的两种方法

    扩展方法 枚举值 前言 在上一篇文章中,我解释了如何以及为什么在Java代码中使用enums而不是switch/case控制结构. 在这里,我将展示如何扩展现有enums功能. 介绍 Java enu ...

最新文章

  1. 学习OpenGL ES之透明和混合
  2. php 获取服务器,PHP 获取服务器详细信息
  3. 数据:42家公司持有超135万枚BTC 价值逾650亿美元
  4. Visual Studio无法推送提交到Github的解决方法
  5. HIVE 面试题总结
  6. 深入理解Magento - 第五章 – Magento资源配置
  7. MIUI ROM 定制教程
  8. 卢克的HTML与CSS基础
  9. 那些从来不用花呗的女孩
  10. 麒麟V10下 安装打包程序
  11. mac下CSV文件编码格式查看与转换
  12. 碳基计算机电路,碳基CMOS集成电路技术
  13. linux环境下网卡重启
  14. Lunch Time
  15. 【简正波作业】——深度模态函数提取
  16. 如何导入本地镜像到阿里云ECS服务器
  17. python为什么是蛇的天敌_蛇遇猪就得哭什么意思 猪为什么是蛇的天敌
  18. R 语言 fig() 用法
  19. 基于PHP+小程序(MINA框架)+Mysql数据库的驾校考试小程序系统设计与实现
  20. vue调用手机浏览器打开pdf_vue插件开发之使用pdf.js实现手机端在线预览pdf文档的方法...

热门文章

  1. 全球 Top 1000 计算机科学家 h 指数公布,中国顶尖计算机科学家人数进入前三
  2. 选 Offer 的 5 个维度
  3. 你要偷偷学会排查线上 CPU 飙高的问题,然后惊艳所有人!
  4. 主板上来了一个新邻居,CPU 慌了!
  5. 使用SSH命令行远程登录运行在CloudFoundry上的应用
  6. C++ 退出双层for循环,解决 break、return、continue无法实现问题
  7. CRM User Status profile中Business Transaction字段的用途 1
  8. Sublime Text3 运行Python 出现Error:Decode error - output not utf-8
  9. (转)全文检索技术学习(一)——Lucene的介绍
  10. vuejs学习笔记(1)--属性,事件绑定,ajax