作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想像下图那样沿对角线对图像进行动画处理。我尝试过翻译动画,但我只能做到平行 X 轴或平行 Y 轴。
但无法弄清楚如何对角线进行。而且我也不确定它可以通过翻译动画或其他一些动画来完成。所以请建议我该怎么做,或者如果有人可以给我一个有用的链接,那么我也将有义务。
最佳答案
一种方法是使用 AnimatorSet
一起播放多个 ObjectAnimator
。
private void animateDiagonalPan(View v) {
AnimatorSet animSetXY = new AnimatorSet();
ObjectAnimator y = ObjectAnimator.ofFloat(v,
"translationY",v.getY(), targetY);
ObjectAnimator x = ObjectAnimator.ofFloat(v,
"translationX", v.getX(), targetX);
animSetXY.playTogether(x, y);
animSetXY.setInterpolator(new LinearInterpolator(1f));
animSetXY.setDuration(300);
animSetXY.start();
}
或者您可以使用自定义 View
和自定义 Property
,但在这种情况下,您需要自己计算 X 和 Y 上的平移:
final Property<YourView, Float> transProperty = new Property<YourView, Float>(
float.class, "translation") {
@Override
public Float get(YourView) {
return object.getTranslation();
}
@Override
public void set(YourView, Float value) {
object.translate(value);
}
};
private void translate(float value){
setTranslationX(value);
setTranslationY(value);
}
并用它来制作动画:
private void animateDiagonalPan(View v) {
ObjectAnimator xy = ObjectAnimator.ofFloat(v,
transProperty, targetValue);
xy.setInterpolator(new LinearInterpolator(1f));
xy.setDuration(300);
xy.start();
}
关于android - 如何对角地翻译图像上的动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23603813/
我真的不知道这个问题以前是否有人问过(我真的找不到) 所以,我正在学习如何创建基本的颜色切换游戏(随机颜色球下降,你需要旋转轮子与相同颜色的球碰撞) 通过这种轮换,我遇到了一个非常大的问题。我需要以某
我必须找到具有 M 对角线和 M << N 的对称方 NxN 矩阵的行列式.有没有比LU分解矩阵更快的方法? 最佳答案 是的,带(ed)矩阵有特殊的方法可以解决复杂度为 O(N*M^2) 的消元问题。
我有一个列数和行数相等的二维 numpy 数组。我想将它们排列成一个更大的阵列,对角线上有较小的阵列。应该可以指定起始矩阵在对角线上的频率。例如: a = numpy.array([[5, 7],
我是一名优秀的程序员,十分优秀!