我有一个ImageView
通过startAnimation()
制作动画,将其滑入屏幕。它在XML
中可见并启用。当我为延迟或Handler
事件添加onClick
时,没有任何反应。当我删除startAnimation()
时,一切正常。当然除了动画。
继承我的代码:
balloon.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
view.setVisibility(View.GONE);
}
});
Animation dropDown =
AnimationUtils.loadAnimation(context, R.anim.balloon_slide_down);
dropDown.setStartOffset(1500);
balloon.startAnimation(dropDown);
为什么会这样?我现在很沮丧......
谢谢,
罗恩
答案 0 :(得分:0)
您的ImageView可能不在您认为的位置。尝试在动画之前在ImageView上设置偏移量。
balloon.offsetTopAndBottom(offset);
//Start Animation from -offset
答案 1 :(得分:0)
动画只会为您提供一个动画,可以滑动图像视图 但实际上imageview的位置没有改变
如果你想改变它,你可以使用layoutparams移动它,并在UIthread中循环它
答案 2 :(得分:0)
好吧......我觉得奇怪ÌmageView
不应该在它所显示的位置。所以我发现只有setVisibility()
在某种程度上不起作用。
我将代码更改为以下内容并且有效:
balloon.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
((ViewGroup) balloon.getParent()).removeView(balloon);
}
});