vsync: this,
lowerBound: 0,
upperBound: 1,
duration: Duration(milliseconds: 1000),
)
//动画开始和结束值
animation=Tween(begin: 100,end: 300).animate(_controller);
//作用对象
Container(
height: animation.value,
width: animation.value,
color: Colors.red,
alignment: Alignment.center,
child: Text(“点我变大”),
)
三 示例
AnimationController _controller;
Animation _animation;
@override
void initState() {
super.initState();
_controller = AnimationController(
vsync: this,
lowerBound: 0,
upperBound: 1,
duration: Duration(milliseconds: 1000),
)
…addStatusListener((AnimationStatus status) {
if(status == AnimationStatus.completed){
_controller.reverse();
}else if(status == AnimationStatus.dismissed){
_controller.forward();
}
});
animation=Tween(begin: 100,end: 300).animate(_controller);
}
//作用对象
Center(
child: GestureDetector(
onTap: (){_controller.forward();},
child: Container(
height: animation.value,
width: animation.value,
color: Colors.red,
alignment: Alignment.center,
child: Text(“点我执行动画”),
),
),
)
@override
void dispose() {
super.dispose();
_controller.dispose();
}
//变量定义
AnimationController _controller;
Animation animationColor;
//动画监听
@override
void initState() {
super.initState();
_controller = AnimationController(
vsync: this,
lowerBound: 0,
upperBound: 1,
duration: Duration(milliseconds: 1000),
)
…addStatusListener((AnimationStatus status) {
if(status == AnimationStatus.completed){
_controller.reverse();
}else if(status == AnimationStatus.dismissed){
_controller.forward();
}
});
animationColor=ColorTween(begin: Colors.red,end: Colors.blue).animate(_controller);
}
//作用对象
Center(
child: GestureDetector(
以薪资待遇为基础,以发展为最终目标,要在高薪资的地方,谋求最好的发展!
下面是有几位Android行业大佬对应上方技术点整理的一些进阶资料。有**Android架构视频+BATJ面试专题PDF+核心笔记等资料。希望能够帮助到大家提升技术。如果大家想要获取的话,可以私信我【666】免费获取哦**
%E4%B8%8D%E4%BC%9A%E8%BF%99%E4%BA%9B%EF%BC%9F%E5%A6%82%E4%BD%95%E9%9D%A2%E8%AF%95%E6%8B%BF%E9%AB%98%E8%96%AA%EF%BC%81.md)。希望能够帮助到大家提升技术。如果大家想要获取的话,可以私信我【666】免费获取哦**
[外链图片转存中…(img-7gVdD9BD-1645000692229)]