首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动画师/动画集在某些设备上的发布

动画师/动画集在某些设备上的发布
EN

Stack Overflow用户
提问于 2017-10-20 08:34:46
回答 1查看 1.1K关注 0票数 4

我在一些设备上用ObjectAnimator类做了一些测试,除了一台设备:华为,P8,Lite 2017,一切都很好。

在此设备上,视图“消失”时,动画开始和“显示”在结尾。这个问题只出现在我使用动画集/动画(Java代码或XML)时,但是使用旧动画类的动画(TranslateAnimation,AlphaAnimation.)工作得很好。

以下是没有问题的设备列表: Nexus 5 Nexus 5X Nexus 9 HTC One M9 GS4 Pixel Alcatel OneTouch Idol 5

这个华为有什么问题?

编辑:我做了一些其他测试,问题似乎只是旋转动画。

代码语言:javascript
复制
ObjectAnimator r = ObjectAnimator.ofFloat(myView, View.ROTATION_Y, 540);
r.setDuration(5000);
r.start();

除了华为,其他设备都能工作。

如果我用阿尔法( ALPHA )、TRANSLATION_X (TRANSLATION_X)或Y (Y)取代TRANSLATION_X,那么它正在为华为服务。

下面是一个或多或少相同问题的链接:ObjectAnimator causes ImageView to disappear

EN

回答 1

Stack Overflow用户

发布于 2018-03-29 12:38:18

我在华为设备(P9 Lite)上也有同样的问题。

问题是在转换过程中的“相机距离”。对于华为来说,相机距离的默认值太小,你应该用代码来设置它:

代码语言:javascript
复制
image.setCameraDistance(float) 

来自文件:

如果要指定导致不同密度的结果在视觉上一致的距离,请使用以下公式:

代码语言:javascript
复制
float scale = context.getResources().getDisplayMetrics().density;
 view.setCameraDistance(distance * scale);
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46845261

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档