当前位置: 首页 > news >正文

深圳建设门户网站有赞微商城登录

深圳建设门户网站,有赞微商城登录,dede购物网站,佛山国内快速建站本文主要摘录自Android中使用FragmentManager管理fragments 和 浅谈FragmentManager与fragment之一二事 先讲下自己对fragment的理解#xff1a; 对于fragment#xff0c;有太多官方文档和博文来介绍#xff0c;此处不做转述#xff1a;我感觉android提供fragment这种组件… 本文主要摘录自Android中使用FragmentManager管理fragments 和 浅谈FragmentManager与fragment之一二事 先讲下自己对fragment的理解 对于fragment有太多官方文档和博文来介绍此处不做转述我感觉android提供fragment这种组件给了开发者更多的“创造”的机会开发者可以基于fragment自己创造、管理页面的处理逻辑fragment之于android就相当于activity之于androidactivity就是fragment的操作系统容器。 fragment和activity的区别在于 fragment的生命周期方法是由托管activity而不是操作系统调用的因为操作系统无法得知Activity用来管理视图的fragmentfragment的使用是在Activity它自己内部处理。 作者 Lynhaw 链接https://www.imooc.com/article/4403 来源慕课网 FragmentManager: 为了管理Activity中的fragments需要使用FragmentManager。可以通过调用getFragmentManager() | getSupportFragmentManager()获取FragmentManager。 因为FragmentManager的API是在Android 3.0也即API level 11开始引入的所以对于之前的版本需要使用support library中的FragmentActivity并且使用getSupportFragmentManager()方法。 Fragment Transactions: 使用Fragment时可以通过用户交互来执行一些动作比如增加、移除、替换等。所有这些改变构成一个集合这个集合被叫做一个transaction。 如何获取FragmentTransaction类的实例 FragmentManager fragmentManager getFragmentManager(); FragmentTransaction fragmentTransaction fragmentManager.beginTransaction(); 每个transaction是一组同时执行的变化的集合。用add(), remove(), replace()方法把所有需要的变化加进去然后调用commit()方法将这些变化应用。 在commit()方法之前你可以调用addToBackStack()把这个transaction加入back stack中去这个back stack是由activity管理的当用户按返回键时就会回到上一个fragment的状态。比如下面的代码就是用一个新的fragment取代之前的fragment并且将前次的状态存储在back stack中。 // Create new fragment and transaction Fragment newFragment new ExampleFragment(); FragmentTransaction transaction getFragmentManager().beginTransaction();// Replace whatever is in the fragment_container view with this fragment, // and add the transaction to the back stack transaction.replace(R.id.fragment_container, newFragment); transaction.addToBackStack(null);// Commit the transaction transaction.commit(); 在这个例子中 newFragment将取代在R.id.fragment_container容器中的fragment如果没有将直接添加新的fragment。通过调用addToBackStack()commit()的一系列转换作为一个transaction被存储在back stack中用户按Back键可以返回上一个转换前的状态。当你移除一个fragment的时候如果commit()之前没有调用addToBackStack()那个fragment将会是destroyed如果调用了addToBackStack()这个fragment会是stopped可以通过返回键来恢复。 commit()方法: 调用commit()方法并不能立即执行transaction中包含的改变动作commit()方法把transaction加入activity的UI线程队列中。但是如果觉得有必要的话可以调用executePendingTransactions()方法来立即执行commit()提供的transaction。这样做通常是没有必要的除非这个transaction被其他线程依赖。 注意你只能在activity存储它的状态当用户要离开activity时之前调用commit()如果在存储状态之后调用commit()将会抛出一个异常。这是因为当activity再次被恢复时commit之后的状态将丢失。如果丢失也没关系那么使用commitAllowingStateLoss()方法。
http://www.pierceye.com/news/372943/

相关文章:

  • 网站设计文献网站开发与维护岗位说明书
  • 公司制作网站东莞南城房价
  • 智能建站系统seo网站优化方案
  • 南宁网站建设找建站通成都seo推广
  • 网站做镜像的有什么用建设银行流水网站
  • 湖北网站定制开发价格表宣传片制作协议
  • 开网站要多少钱自己怎样做网站
  • 建设网站的教程免费的wordpress分类在哪设置
  • 电子书网站 跟我学做家常菜800网站建设与维护 教学大纲
  • 河南省住房城乡建设主管部门网站wordpress还有人在用吗
  • 好口碑关键词优化沈阳企业关键词优化
  • 外汇自动跟单网站开发wordpress支持中文
  • 南宁网站建设推广教育类网站框架
  • 定制网站建设服务公司摄影设计师招聘
  • 地图 添加到网站观点网站
  • 给分管领导网站建设情况汇报怎么写企业网站的发展历史
  • 佛山营销网站建设费用app制作器下载软件
  • 如何将优酷视频上传到自己网站万能网
  • 域名销售网站wordpress 数据库配置文件
  • 广州营销型网站建设怎么样做网站必须要认证吗
  • 网站开发主要内容免费商城平台
  • 青岛建站方案海兴县网站建设公司
  • 网站文案框架兰州网页制作公司网站
  • 专业网站有哪些平台wordpress那个版本
  • 网站建设按钮详情页设计图
  • 杭州公司注册代理中介深圳关键词优化软件
  • 乐清网站制作公司电话免费做初中试卷的网站
  • 注册一个网站的流程反向代理服务器做wordpress外网
  • 沁阳网站建设tomcat建网站
  • 品牌网站建设公司推荐网站建设公司3lue