我正在尝试创建一个视图,该视图将接收翻译动画并动画化屏幕上另一个视图的位置,但是随着它离开其父级布局(框架布局)而消失了。我正在寻找类似于“视图覆盖”的东西,但是我希望能够在API 18之前使用它,而“视图覆盖”是不可能的。视图位于框架布局内部,框架布局位于表行内部,而表行位于表布局内部。是否可以在不增加最低要求的API的情况下实现?
更新
如果我创建一个FrameLayout并将新的View添加到新的布局中,如下所示:
View newView = new View(this);
newView.setBackgroundColor(Color.BLACK);
newView.setLayoutParams(new TableLayout.LayoutParams(initialColourView.getWidth(), initialColourView.getHeight()));
FrameLayout frame = (FrameLayout)findViewById(R.id.full_view_layout);
frame.addView(newView);
我可以为视图设置动画;但是newView的宽度是全屏的,而不是我想要的initialView的宽度。
最佳答案
我解决了自己的问题;所有您需要做的就是
android:clipChilderen="false"
在所有要进行动画处理的视图都是其子视图的布局中。 (在我的情况下,这是框架布局,表格行和表格布局)