我有一个 initState()
方法并包含 AnimationController
作为以下代码:
_controller = AnimationController(
vsync: this,
duration: const Duration(
milliseconds: 2500,
),
);
例如我想使用以下方式:
import 'package:get/get.dart';
import 'package:flutter/material.dart';
class ControllerViewModel extends GetxController {
AnimationController _controller;
@override
void onInit() {
// TODO: implement onInit
super.onInit();
_controller = AnimationController(
vsync: this,
duration: const Duration(
milliseconds: 2500,
),
);
}
}
但当然我发现 The argument type 'ControllerViewModel' can't be assigned to the parameter type 'TickerProvider'.
那么有没有办法在 GetX 状态管理方式中使用这个 AnimationController
?
答案 0 :(得分:1)
我找到了一个解决方案,只需添加 with SingleGetTickerProviderMixin
作为完整代码,如下所示:
import 'package:get/get.dart';
import 'package:flutter/material.dart';
class ControllerViewModel extends GetxController with SingleGetTickerProviderMixin {
AnimationController _controller;
@override
void onInit() {
// TODO: implement onInit
super.onInit();
_controller = AnimationController(
vsync: this,
duration: const Duration(
milliseconds: 2500,
),
);
}
}