Android 如何在不聚焦视图的情况下设置视图动画
我在NestedScrollView中有一个ImageView,当我向上滚动时,我使用下面的方法用动画隐藏它,而ImageView在屏幕上不可见Android 如何在不聚焦视图的情况下设置视图动画,android,animation,nestedscrollview,Android,Animation,Nestedscrollview,我在NestedScrollView中有一个ImageView,当我向上滚动时,我使用下面的方法用动画隐藏它,而ImageView在屏幕上不可见 public static void collapse(final View v) { final int initialHeight = v.getMeasuredHeight(); Animation a = new Animation() { @Override p
public static void collapse(final View v) {
final int initialHeight = v.getMeasuredHeight();
Animation a = new Animation() {
@Override
protected void applyTransformation(float interpolatedTime, Transformation t) {
if (interpolatedTime == 1) {
v.setVisibility(View.GONE);
} else {
v.getLayoutParams().height = initialHeight - (int) (initialHeight * interpolatedTime);
v.requestLayout();
}
}
@Override
public boolean willChangeBounds() {
return true;
}
};
// 1dp/ms
a.setDuration((int) (initialHeight / v.getContext().getResources().getDisplayMetrics().density) * 4);
v.startAnimation(a);
}
但一旦动画开始…它就会滚动回ImageView,然后隐藏它。
我不希望ImageView在动画时具有焦点。我之所以使用动画,是因为当我将ImageView的Visibility设置为GONE时,我在屏幕上看到一个flick或blink。我不确定该视图是否真正获得了“焦点”,因为默认情况下,ImageView在触摸模式下不应可聚焦。我也找不到任何关于动画默认改变焦点的信息。也许你可以调试焦点,看看这是否真的是你应该搜索的,这样你就可以进入正确的轨道了