[英]Android FrameLayout/ImageView Rotation issue
我正在旋轉一個包含帶有圖像的Imageview的FrameLayout。當我在旋轉的FrameLayout上添加另一個Imageview時,添加的imageview也會像往常一樣默認旋轉。
為了防止這種情況,因為我不需要旋轉添加的ImageView,所以我以與FrameLayout相反的角度旋轉該ImageView。
我正在使用以下代碼旋轉FrameLayout:
(1)旋轉:
float angle = mainFrm.getRotation();
if (angle == 0) {
angle = 360;
}
angle = angle - 90;
mainFrm.setRotation(angle);
(2)垂直翻轉
float angle = mainFrm.getRotationX();
if (angle == 0) {
angle = 360;
}
angle = angle - 180;
mainFrm.setRotationX(angle);
(3)水平翻轉
float angle = mainFrm.getRotationY();
if (angle == 0) {
angle = 360;
}
angle = angle - 180;
mainFrm.setRotationY(angle);
我正在使用以下代碼旋轉ImageView:
if(mainFrm.getRotation()!=0)
{
iv.setRotation(-(mainFrm.getRotation()));
}
if(mainFrm.getRotationX()!=0)
{
iv.setRotationX(-(mainFrm.getRotationX()));
}
if(mainFrm.getRotationY()!=0)
{
iv.setRotationY(-(mainFrm.getRotationY()));
}
現在我面臨的問題是,當我第一次旋轉框架(270度),然后垂直翻轉(180度),並且在將ImageView添加到該旋轉的框架之后,它也旋轉了ImageView。
在這里,我還要附加圖像。 這是問題
我需要這樣的解決方案
任何幫助/建議將不勝感激。
提前致謝
我的框架布局就像..
<FrameLayout android:id="@+id/frame"
android:layout_width="match_parent"
android:layout_height="200dp"
android:background="#33ffff">
<ImageView android:id="@+id/image1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/ic_launcher"/>
<ImageView android:id="@+id/image2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:src="@drawable/ic_launcher"/>
</FrameLayout>
我的Java代碼是
mFrame = (FrameLayout) findViewById(R.id.frame);
mImage1 = (ImageView) findViewById(R.id.image1);
mImage2 = (ImageView) findViewById(R.id.image2);
float angle = mFrame.getRotation();
if(angle == 0) {
angle = 180;
}
mFrame.setRotation(angle);
mImage2.setRotation(-angle);
希望這個能對您有所幫助...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.