我的Activity
有RelativeLayout
个主视图,标识为parent
。在此我有两个RelativeLayouts
,child1
和child2
。
我想将ImageView
的{{1}}动画设为child2 RelativeLayout
。我不希望图片在child1
中消失,然后突然出现在child2
中。
child1
我无法在不使用<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/parent">
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/child1"/>
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/child2">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/image"
android:layout_centerInParent="true"/>
</RelativeLayout>
</RelativeLayout>
和addView
的情况下找到这样做。如果我这样做,removeView
只会出现在ImageView
中,而我无法顺利制作动画。
我有以下可能的方式的想法,但感觉就像一个真正的长期黑客。
child1
x
和y
ImageView
parent
child2
中的副本设置为parent
中的正确位置(这可能需要进行潜在的难度计算)child1
中添加原始视图,该视图位于重复视图还有其他方法吗?
答案 0 :(得分:0)
您可以尝试这样一个简单的方法:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/parent">
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/child1>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/image2"
android:layout_centerInParent="true"/>
</RelativeLayout>
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/child2">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/image2"
android:layout_centerInParent="true"
android:visibility:gone/>
</RelativeLayout>
</RelativeLayout>
并且在Java中按下按钮时,例如,只需将drawable添加到&#34; image2&#34;,设置可见&#34; image2&#34;并隐藏&#34; image1&#34;。