Я вращаю ImageView с postRotate (float degrees, float px, float py), устанавливая px и py в несколько разных значений, включая (0,0) и (imgView.getHeight(), imgView.getWidth()), но он отказывается вращаться вокруг любой другой точки, чем центр. Мне интересно, имеет ли он какое-либо отношение к тому факту, что моя сила тяжести находится в центре LinearLayout?Вращение изображения вокруг указанной точки не работает! (Android)
Моя раскладка:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center">
<ImageView
android:id="@+id/imageTraj"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="matrix"
android:src="@drawable/impactangle" />
Как я поворот изображения:
matrix.postRotate(degrees,imageView.getHeight(),imageView.getWidth());
imageView.setImageBitmap(Bitmap.createBitmap(imageScaled, 0, 0,
imageScaled.getWidth(), imageScaled.getHeight(), matrix, true));
PS Я заметил, есть несколько подобных вопросов, но ни один из них не имеют подходящие ответы.
Спасибо, я дам это сейчас. –
Нет. Все еще отказывается вращаться вокруг любой другой точки, чем центр. –
О нет! Оно работает! Мне просто нужно было вызвать setAngleRotation (очевидно). Единственная проблема заключается в том, что она обрезает изображение вокруг исходной границы. Любые идеи, как остановить это? –