gpt4 book ai didi

java - View 在动画期间被像素化以倾斜

转载 作者:太空狗 更新时间:2023-10-29 14:19:04 25 4
gpt4 key购买 nike

在动画过程中 View 变得模糊 我只是想在尝试滚动时获得一点倾斜。我正在使用 Universal-Image-Library 来处理动画。我想在倾斜 View 时获得 3D 外观。

第一张图,就是我想要的。 enter image description here


但是下面这张图,我有什么。下面的 View 像素化了。

enter image description here

  private void rotateLeftFrag(View af) {


if (af != null) {
ObjectAnimator.ofFloat(af, "rotationY", 5, 0)
.setDuration(100).start();
}
}

ObjectAnimator com.nineoldandroids.animation.ObjectAnimator.ofFloat(Object target, String 
propertyName, float... values)

是否有解决此问题以获得流畅的动画或 View 标题的方法?谢谢

更新:

            float density = getResources().getDisplayMetrics().density;
float scale = getResources().getDisplayMetrics().density;
af.setCameraDistance(density * scale);
ObjectAnimator.ofFloat(af, "rotationY", .5f, 0).setDuration(500).start();

最佳答案

我认为这个视频可以帮助您:

http://www.youtube.com/watch?v=pMcu35-tVls

在 2 点 10 分,这个人谈到了向旋转矩形的每一侧添加 1 个额外的透明像素。这应该有助于平滑边缘,因为它们将位于矩形内部,而不是边界上。

源代码链接在视频下方。

如果你看不到它: http://developer.android.com/shareables/devbytes/CardFlip.zip

你要看的类是CardView,方法bitmapWithBorder:

private static final int ANTIALIAS_BORDER = 1;

/**
* Adding a 1 pixel transparent border around the bitmap can be used to
* anti-alias the image as it rotates.
*/
private BitmapDrawable bitmapWithBorder(BitmapDrawable bitmapDrawable) {
Bitmap bitmapWithBorder = Bitmap.createBitmap(bitmapDrawable.getIntrinsicWidth() +
ANTIALIAS_BORDER * 2, bitmapDrawable.getIntrinsicHeight() + ANTIALIAS_BORDER * 2,
Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmapWithBorder);
canvas.drawBitmap(bitmapDrawable.getBitmap(), ANTIALIAS_BORDER, ANTIALIAS_BORDER, null);
return new BitmapDrawable(getResources(), bitmapWithBorder);
}

关于java - View 在动画期间被像素化以倾斜,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18585324/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com