Kotlin之Int转换成Float的坑
2018-07-05 本文已影响30人
南娇
优于别人,并不高贵。真正的高贵是优于过去的自己
在java代码中像这样打印出来的FloatC等于0.99,但是在Kotlin中打印出来的是0,因为IntA/IntB等于0.99<1所以等于零
fun IntToFloat() {
var IntA: Int = 99
var IntB: Int = 100
var FloatC: Float
FloatC = (IntA / IntB).toFloat()
Log.e("TAG", "flaogt---->$FloatC")
}
要想不等于零要这样写,是不是很蒙蔽,很不适应
fun IntToFloat() {
var IntA: Float = 99f
var IntB: Float = 100f
var FloatC: Float
FloatC = IntA / IntB
Log.e("TAG", "flaogt---->$FloatC")
}
Kotlin之动画监听
java中的动画监听
ValueAnimator animator = ObjectAnimator.ofFloat(0, 100);
animator.setDuration(500);
//插值器
animator.setInterpolator(new DecelerateInterpolator());
animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator animation) {
float number = (float) animation.getAnimatedValue();
}
});
animator.start();
Kotlin中的动画监听
var animator: ValueAnimator = ObjectAnimator.ofFloat(start.toFloat(), end.toFloat())
animator.duration = 500
animator.setInterpolator(DecelerateInterpolator())
animator.addUpdateListener {
var value: Float = it.animatedValue as Float
}
animator.start();
主要是 animator.addUpdateListener的写法不一样