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

怎样把自己做的网站发布钟表网站开发背景文章

怎样把自己做的网站发布,钟表网站开发背景文章,免费网站空间可访问,wordpress首页插件我想大家对Fragment都不陌生#xff0c;它作为界面碎片被使用在Activity中#xff0c;如果只是更换Activity中的一小部分界面#xff0c;是没有必要再重新打开一个新的Activity的。有时#xff0c;即使要更换完整的UI布局#xff0c;也可以使用Fragment来切换界面。 何…我想大家对Fragment都不陌生它作为界面碎片被使用在Activity中如果只是更换Activity中的一小部分界面是没有必要再重新打开一个新的Activity的。有时即使要更换完整的UI布局也可以使用Fragment来切换界面。 何为流式切换 流式切换不好意思我给大家杜撰了一个词所以大家陌生也很正常。简单的说就是点击下一步下一步来按顺序更换界面的内容。你可以想象成是一个ArrayList。不过大多数时候的Fragment界面切换都不是流式切换。比如底部的tab按钮点击切换一个Fragment就不是流式切换。 效果演示 不管Fragment是否是流式切换我们先看一个动画。 使用Dora SDK就可以很方便的实现这一效果并且是不会有重叠现象的。待会我会讲解Fragment切换的标准写法。 如何使用Dora SDK的Fragment切换 // 添加以下代码到项目根目录下的build.gradle allprojects {repositories {maven { url https://jitpack.io }} } // 添加以下代码到app模块的build.gradle dependencies {implementation com.github.dora4:dora:1.0.106 }首先要添加Dora SDK的依赖推荐使用最新版本的sdk即1.0.106。然后继承并使用dora.BaseActivity和dora.BaseFragment。 package dora;import dora.util.IntentUtils;/*** 在Activity中切换多个Fragment时使用。*/ public interface PageSwitcher {/*** Fragment非流式切换之显示页面。*/void showPage(String key);/*** Fragment非流式切换之显示页面。*/void showPage(String key, IntentUtils.Extras extras);/*** Fragment流式切换之显示下一页。*/void nextPage();/*** Fragment流式切换之显示下一页。*/void nextPage(IntentUtils.Extras extras); }里面有一个关键的接口名叫PageSwitcher。它是专门用来切换Activity中的Fragment的。showPage表示非流式切换而nextPage则表示流式切换。BaseActivity和BaseFragment都实现了这个接口所以你可以在Activity或Fragment的任意地方进行流式切换和非流式切换。Fragment很简单继承BaseFragment就可以了。Activity重点来了继承BaseActivity后可以重写这几个方法。 getFlowFragment(String key) getFlowFragmentContainerId() getFlowFragmentPageKeys()重写getFlowFragment告诉框架key和fragment的映射关系。 重写getFlowFragmentContainerId()告诉框架哪部分布局区域需要更换Fragment内容。 如果你不重写这个方法就会走以下方法最终拿到的就是android.R.id.content这个布局下面就是我们自己定义的界面的根布局。 private int getDefaultFlowFragmentContainerId() {int defFragmentId getFlowFragmentContainerId();if (defFragmentId ! 0) {return getFlowFragmentContainerId();} else {return android.R.id.content;} }重写getFlowFragmentPageKeys()告诉框架所有key的顺序它返回一个数组数组中key的顺序就是fragment的排列顺序。 调用nextPage()就会按顺序从第一个Fragment切换到最后一个Fragment切换到最后一个为止。如果你需要更灵活的切换这些fragment就需要使用showPage了很简单吧。 无重叠切换Fragment的标准写法 initFragments private void initFragments() {if (xxxFragment null) {xxxFragment XxxFragment();FragmentUtils.add(getSupportFragmentManager(), xxxFragment, R.id.fragmentContainer);}if (yyyFragment null) {yyyFragment YyyFragment();FragmentUtils.add(getSupportFragmentManager(), yyyFragment, R.id.fragmentContainer);}if (zzzFragment null) {zzzFragment ZzzFragment();FragmentUtils.add(getSupportFragmentManager(), zzzFragment, R.id.fragmentContainer);} }隐藏activity中所有fragment 调用BaseFragment中的hideFragments()来实现。以下为hideFragments源码。 protected void hideFragments(CollectionBaseFragment? fragments) {if (fragments null) {return;}for (BaseFragment? fragment : fragments) {FragmentUtils.hide(fragment);} }显示要显示的那个fragment private void showXxxFragment() {hideFragments(allFragments);if (xxxFragment null) {xxxFragment new XxxFragment();FragmentUtils.add(getSupportFragmentManager(), xxxFragment, R.id.fragmentContainer);}FragmentUtils.show(xxxFragment); }这里加个fragment为null的判断是为了防止你忘记initFragments。 谈谈我的开源框架系列 我的开源框架总共有三条路线dora为核心架构dcache数据缓存方向dview为自定义View系列本篇也只是介绍dora框架的冰山一角还有更多功能等你来探索。
http://www.hkea.cn/news/14302694/

相关文章:

  • 四川网站建设价格智加设计创新集团
  • 建设厅里网站查不到外地施工单位寺庙网站建设
  • 吉首企业自助建站怎么建立一个属于自己的网站
  • 东莞做商城网站建设哪家好郑州联通网站备案
  • 自助建站系统源源码公众号怎么发布
  • 网络强国建设的未来天津网站优化建设
  • 电子商务网站建设可行性分析网络市场调研的步骤
  • 太原网络营销网站软文代写服务
  • 网站建设开发服务费税率做网站 360
  • 网站建设公司岳阳网站建设过程中服务器的搭建方式
  • 做个网站成功案例做情侣网站
  • 杭州商城网站建设北极寒流wordpress
  • 上海建网站手机app食材网站模板
  • 做网站项目时 需求分析的内容网站建设 sql
  • 无棣网站建设重新安装wordpress
  • 学校网站 网站建设汽车建设网站的能力
  • 网站图片轮播怎么做wordpress小程序详解
  • 德阳北京网站建设海淀地区网站建设
  • 做网站的应用创意营销策划案例
  • 云南网站建设是什么福建seo关键词优化外包
  • 现在自己做网站卖东西行么沈阳网页设计
  • 保定模板建站定制网站常州外贸网站建设
  • 怎么设计网站规划方案重庆市建设工程信息网官网平台
  • 虚拟商品交易网站建设页面简单的网站模板免费下载
  • 注册域名和建立网站的过程网站的网站制作
  • 电子商务营销网站建设app制作成本
  • wordpress多语言站点移动开发的几种方式
  • wordpress导出网站太原网站建设质量推荐
  • 做网站怎么去进行链接佛山住建
  • 网站营销活动页面制作建网站公司要钱吗