GetX项目级实战,“金三银四”春招指南

博主分享了关于Android开发的经验,强调虽然市场变化,但高级工程师仍稀缺。提供了耗时两个月整理的Android学习笔记,包含大厂面试真题,旨在帮助开发者提升技能,应对职业挑战。
摘要由CSDN通过智能技术生成
  page: () => MonthlyPage(),

  binding: MonthlyBinding(),

),

GetPage(

  name: Routes.PROFILE,

  page: () => ProfilePage(),

),

];

}




习惯了使用命名路由,所以定义了路由表。binding是 GetX 中我特别喜欢的功能——依赖注入,就像原生的 Hilt 一样,让代码结构无侵分层。并且如果使用的是流或计时器,它们将自动关闭,开发者根据不用担心。Binding 类是一个解耦依赖注入的类,在路由的时候使用。就可以知道注入的作用域,以及知道在何处以及如何处置注入的对象。



登录

--



api 是玩安卓的开放 api,登录要使用 api 和 repository,所以依赖注入的形式注入:



class LoginPageBinding implements Bindings {

@override

void dependencies() {

Get.lazyPut(() => LoginApi());

Get.lazyPut(() => LoginRepository());

Get.lazyPut<LoginController>(

  () => LoginController(),

);

}

}




在使用的时候直接 find:



final LoginRepository repository = Get.find();




Get.put()是最常见的注入依赖的方法,它是直接注入到内存里。你可以在任何地方找到注入的对象,这是 Provider 所没有的功能。



仅有put还不够,GetX 还提供另外一个方法,Get.lazyPut可以懒加载一个依赖,这样它只有在使用时才会被实例化。这对于计算代价高的类来说非常有用,或者如果你想在一个地方实例化几个类(比如在 Bindings 类中),但是不知道会不会使用到,那懒加载是正确的选择,是不是很像 kotlin 的 lazy。



显示密码的功能暂时未加。



![](https://img-blog.csdnimg.cn/img_convert/b0e55eda9884e9e36c0cc9c863581295.png)



在欢迎页会注入全局的依赖,然后判断是否登录,对应不同的导航:



@override

void onReady() async {

super.onReady();

await GloabConfig.init();

await DenpendencyInjection.init();

LoginProvider loginProvider = Get.find<LoginProvider>();

print(loginProvider);

// 如果未登录就登录

// 如果已登录就去task页面

if (loginProvider.isLogin()) {

  Get.offNamed(Routes.TASK);

} else {

  Get.offNamed(Routes.LOGIN);

}

}

}




Task 列表

-------



![](https://img-blog.csdnimg.cn/img_convert/8bd30929814aa81b7c9441d57e09c582.png)



主页实现了底部导航和嵌入式FloatingActionButtonLocation,没有任务的时候会弹出使用引导。点击加号可以添加任务。因为 api 是分页的,所以也做了分页处理。



@override

Widget build(BuildContext context) {

return Scaffold(

  appBar: AppBar(title: Text('My Task')),

  body: Body(),

  floatingActionButton: FloatingActionButton(

    onPressed: () {

      Get.toNamed(Routes.TASK_ADD);

    },

    child: Icon
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值
>