我的布局中有4个Framelayout和2个ImageViews(一个可见,一个不可见)。在onMap上第一个ImageView后,在Framelayout中,它旋转到第二个ImageView。就像在这个例子中一样(http://www.inter-fuser.com/2009/08/android-animations-3d-flip.html)。它工作正常,但是有没有选择组合两个或更多ImageViews?所以如果我点击第一张图片(android:id =" @ + id / HotView1")我的android:id =" @ + id / HotView2"和android:id =" @ + id / WarmView2"将togehter旋转为一个图像?
当然,我可以按顺序旋转每个视图,但由于旋转时的摄像机角度,这看起来不太好。是否有任何简单快速的解决方案?
[...]
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center" >
<ImageView
android:id="@+id/HotView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:src="@drawable/hot_notactiv" />
<ImageView
android:id="@+id/HotView2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:src="@drawable/hot_activ" />
</FrameLayout>
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1" >
<ImageView
android:id="@+id/WarmView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:src="@drawable/warm_notactiv" />
<ImageView
android:id="@+id/WarmView2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:src="@drawable/warm_activ" />
</FrameLayout>
[...]
答案 0 :(得分:0)
首先关闭所有要设置动画的LinearLayout和ImageView的ID。这样你就可以参考它们了。
然后定义一个将为传递的视图设置动画的函数,如:
public void myAnimation(View viewToAnimate) {
// Your code for animating which will be comman
}
现在获取LinearLayout和ImageView的引用,检查要为哪个视图设置动画的条件,例如:
if(wantToAnimateLinearLayout == true) {
myAnimation(linearLayoutReference);
} else {
myAnimation(imageViewReference);
}