gpt4 book ai didi

android - NineOldAndroids,旋转或移动后无法点击 View

转载 作者:塔克拉玛干 更新时间:2023-11-02 18:51:10 25 4
gpt4 key购买 nike

我使用 NineOldAndroids 2.4.0 动画对象主要是对运动和变换的控制。在 Android 4.0 及更高版本上一切正常,但在以前的版本(2.1、2.3)上,动画元素未获得焦点且不可点击。示例代码:

View v = findViewById(R.id.button1);
v.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this, "Click!", Toast.LENGTH_SHORT).show();
}
});
ObjectAnimator moveDown = ObjectAnimator.ofFloat(v, "translationY", 100f);
moveDown.setDuration(5000);
moveDown.start();

这是库中的错误还是我做错了什么?如果这库不支持“ hive 动画API”的所有功能,那么在我的项目中,它将无用。

在 Android 开发者博客上引用 "Animation in Honeycomb" :由于系统实际上是在改变目标对象的属性,所以对象本身会发生变化,而不仅仅是它们的外观。所以你移动的那个按钮实际上是移动的,而不仅仅是画在不同的地方。您甚至可以在其动画位置单击它。继续并单击它;我敢说。

最佳答案

现在我找到了答案: How to do interactive animation (translation) with Android

它说 nineoldandroids 有与原生 SDK 相同的限制。

所以我的解决方案:

myAnim.setListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd ( Animator nullPointer ) {
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) child.getLayoutParams();
params.bottomMargin += toYDelta;
params.leftMargin += toXDelta;
child.setLayoutParams(params);
}
});

关于android - NineOldAndroids,旋转或移动后无法点击 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13173808/

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