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

怎么做网站的seo各大设计网站

怎么做网站的seo,各大设计网站,专业做网站的公司,广东手机网站开发多少目录 前言路由切换NavControllerBackStackEntry过渡动画过渡原理缩放动画渐隐动画滑动动画动画过渡实战前言 在当今的移动应用开发中,导航是用户与应用交互的核心环节。随着 Android Compose 的兴起,它为开发者提供了一种全新的、声明式的方式来构建用户界面,同时也带来了更…

目录

    • 前言
    • 路由切换
      • NavController
      • BackStackEntry
    • 过渡动画
      • 过渡原理
      • 缩放动画
      • 渐隐动画
      • 滑动动画
    • 动画过渡实战

前言

在当今的移动应用开发中,导航是用户与应用交互的核心环节。随着 Android Compose 的兴起,它为开发者提供了一种全新的、声明式的方式来构建用户界面,同时也带来了更简洁、更高效的导航实现方式。本系列教程将深入探讨如何在 Android Compose 中实现各种导航功能,从基础的页面跳转到复杂的导航架构设计,帮助你全面掌握 Compose Navigation 的精髓。

在本系列的第二部分,此时将会学习三种不同的路由切换过渡动画,并了解如何正确高效的封装composable方法,实现路由的快速注册。


路由切换

NavController

NavController用于控制APP全局的路由导航,他也存在一种变体,下面是两个主要的controller对象

  1. NavController:Navigation导航的核心类,负责管理导航图(NavGraph)和返回栈(Back Stack),并提供导航操作的方法
  2. NavHostController:是 NavController 的一个子类,专门用于 Compose 环境。它继承了 NavController 的所有功能,并提供了一些额外的 Compose 特定的功能

除上述所述之外,您最好可以在使用过程中利用下方三个特点:

  1. 一般页面内基本都使用NavController对象
  2. 只有我们在定义NavHost时才会用到NavHostController对象
  3. 务必保证全局有且只有一个NavController对象,也就是说他必须是单例的(所以我们一般都会从MainActivity就直接创建NavController,然后层层传递下去,就可以保证不会创建重复的对象)

如下代码即在定义NavHost时使用了NavHostController对象:

@Composable
fun NavGraphs(modifier: Modifier = Modifier,navController: NavHostController = rememberNavController(),startDestination: String = NavRoutes.INIT_NAV_ROUTE
) {NavHost(modifier = modifier, navController = navController, startDestination = startDestination) {...}
}

BackStackEntry

路由返回栈(BackStackEntry)拥有以下几个特点:

  1. 后进先出(LIFO):
    返回栈采用后进先出的数据结构,即最后被访问的页面位于栈顶,最先被访问的页面位于栈底。
    当用户从一个页面导航到另一个页面时,新的页面会被推入栈顶。
    当用户点击返回按钮时,栈顶的页面会被弹出,用户返回到前一个页面。
  2. 初始目的地:
    当用户打开应用时,NavController 会将第一个目的地推送到返回栈的顶部。
  3. 导航操作:
    每次调用 NavController.navigate() 时,目标页面会被推入返回栈的顶部。
    调用 NavController.popBackStack() 时,会将当前页面从返回栈中弹出,并导航到前一个页面。
  4. 返回到特定目的地:
    你可以使用 popBackStack() 方法导航到特定的目的地,并可以选择是否将该目的地从返回栈中弹出。
    例如,navController.popBackStack(R.id.destinationId, true) 会导航到指定的目的地,并将其从返回栈中弹出。

你可以先拿到一个NavController对象,再根据它来得到当前的路由返回栈;
获取方式如下所示:

val navController = rememberNavController()
val currentBackStackEntry by navController.currentBackStackEntryAsState()
val currentDestination = currentBackStackEntry?.destination

过渡动画

过渡原理

修改导航过渡动画主要依赖于 AnimatedNavHost 和 composable 函数中的 enterTransition、exitTransition、popEnterTransition 和 popExitTransition 参数。这些参数允许你自定义页面跳转时的动画效果;

每一个composable都有下面四个动画参数,通过给予不同的动画方法、提供适合的过渡延时,即可得到美观的路由切换过渡效果

  1. enterTransition:定义页面进入时的动画。
  2. exitTransition:定义页面退出时的动画。
  3. popEnterTransition:定义从栈中弹出页面时的进入动画。
  4. popExitTransition:定义从栈中弹出页面时的退出动画。

缩放动画

动画效果:

  1. 切换到新路由时:旧页面缩小后逐渐消失,新页面从小到大缩放后逐渐显现
  2. 回退到上一路由时:上述动画反过来
http://www.yayakq.cn/news/290763/

相关文章:

  • 网站建设企业响应式网站模板手机制作3d动画
  • 建设游戏网站wordpress文字模板
  • 315网站行业门户网站主要特点和功能
  • 江苏汇算清缴在哪个网站做怎样查看网站是用什么做的
  • 湖北营销网站建设联系方式建设网站请示
  • 做直播小视频在线观看网站wordpress 置顶不重复
  • 上海 高端 网站建设wordpress 多站点 子目录
  • 杭州设计 公司 网站建设怎么做好seo推广
  • 建网站哪家质量好太原本地网站
  • 免费微网站制作教程视频创新型的顺的网站制作
  • 互联网公司排名完整优化搜索关键词
  • 东莞广告公司东莞网站建设价格广州开发区黄埔区
  • 网页做网站的尺寸兰州 电子 网站建设
  • 网站报404错误怎么解决苏州网站建设制作设计
  • 中职网站建设与维护试卷网站怎么广告投放
  • 网上接做网站的单子公司营业执照
  • 信息网站开发网络公司抚州市建设局网站
  • 无锡网站建设 微信网站建设和优司怎么样
  • 如何做做网站网站建设 宣传
  • 优秀网站设计 pdf汉中微信网站建设服务
  • 合肥网站建设需要多网站建设要哪些人?
  • 自己做的网站怎样让百度搜到wordpress 美橙互联
  • 唐山网站制作手机网站建设服务商
  • 百度蜘蛛网站排名百度怎么收录网站
  • 成都网站建设龙兵好看的手机网站布局
  • 重庆制作网站软件网站备案 两个域名
  • 网站建设咨询公司山亭网站建设
  • 网站生成app免费手机模拟装修app
  • 河北网站seo流量统计是可以查询到网站来路的关键字里出现了不相关的关键词
  • 旅游网站开发需求分析网站都要交域名费么