flutter 主题与多语言切换,调用时不依赖context(完整版)

前言

主题切换和多语言切换作为app的扩展功能也是很重要的,在目前市面上绝大多数的app中也都包含了这些功能,因此我觉得非常有必要掌握其实现的方式以及原理,网上也有很多相关的教程和实例,但是都讲的不是很完整或者不全面,因此本篇文章旨在通过通俗的表述来详细讲解flutter中如何实现主题切换和多语言切换的功能,相信看完你一定会有所收获。

开始实现

首先我们需要知道在app中实现类似于主题切换和多语言切换这样的功能,两者中任意一项配置的切换更改,影响的不单单是app中的某一个页面,而是app中所有需要改变颜色和语言的页面,因此是对整个app生效的,即就是当发生切换的时候我们需要刷新整个app,这样所有引用了颜色和语言的页面就会刷新,而在flutter中说到页面刷新,我们就必须提到一个重要的知识点:状态管理,个人认为状态管理是进行flutter项目开发必须掌握的一项技能,目前关于状态管理的解决方案也有很多,比如:官方的Provider,Bloc,GetX都是目前比较受欢迎用的人也比较多的三种,自己务必要选择其中的一个或者多个熟练掌握,因为真的很重要。

同样的切换之后,需要持久化保存用户的选择,下次再次打开app,依然使用上次的设置,在flutter中实现简单数据配置的持久化存储,可以通过插件shared_preferences来实现,对应原生iOS和macOS上的NSUserDefaults,和Android上的SharedPreferences实现。

1,插件依赖

dependencies
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智玲君

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值