所以我的屏幕有一个图像视图,我用下面的代码用动画拖拽屏幕:
float bottomOfScreen = context.getResources().getDisplayMetrics()
.heightPixels - (myImageView.getHeight() * 2);
myImageView.animate()
.translationY(bottomOfScreen)
.setDuration(durationOfFalling);
所以基本上,我有一个图像,它被拖出屏幕,现在我的图像已经消失了,但我需要它回到原来的位置,它是在我把它拖下来之前(在屏幕的顶部),所以我可以再拖下来,每当我想。你有什么办法,我可以使图像再次出现在屏幕的顶部,这样我就可以重复使用它?
我还尝试通过constraintlayout添加它,然后再通过constraintlayout.addview(myimageview)这样添加它(可能做得不对):
ConstraintLayout ly = findViewById(R.id.ly);
noteiv1.setLayoutParams(new ConstraintLayout.LayoutParams(ConstraintLayout.LayoutParams.WRAP_CONTENT, ConstraintLayout.LayoutParams.WRAP_CONTENT));
noteiv1.setId(View.generateViewId());
ly.addView(noteiv1);
ConstraintSet set = new ConstraintSet();
set.clone(ly);
set.connect(noteiv1.getId(), ConstraintSet.LEFT, ly.getId(), ConstraintSet.LEFT);
set.connect(noteiv1.getId(), ConstraintSet.RIGHT, ly.getId(), ConstraintSet.RIGHT);
set.connect(noteiv1.getId(), ConstraintSet.TOP, ly.getId(), ConstraintSet.TOP);
set.connect(noteiv1.getId(), ConstraintSet.BOTTOM, ly.getId(), ConstraintSet.BOTTOM);
set.applyTo(ly);
- noteiv1是我需要重用的图像视图
我很高兴能得到一些帮助:)
1条答案
按热度按时间6jjcrrmo1#
这已经被问到和回答了。
这里有一个答案。
我认为你应该在添加imageview后克隆布局。