2012-02-13 6 views
1

画像のマトリックス(ズームとドラッグ)を変更し、imageview.setImageMatrix(matrix)を呼び出していますが、画像は変更されません。imageview.setImageMatrixは画像を変更しません

私が設定するのを忘れていない:

アンドロイド:scaleType = "マトリックス"

をxmlファイルに。

ログをチェックして、タッチイベントが正しく傍受され、マトリックス自体が正しく計算されました。

まだ...画面上の画像に影響はありません....

は、誰もがこの奇妙な動作が発生しましたか?

+2

行列を変更した後でImageViewで 'invalidate()'を呼び出しましたか? – Jave

+0

@Javeありがとう!それはトリックでした! –

答えて

1

この記事はあなたにWhy does ImageView.setImageMatrix() not work? を支援し、(DOCから)覚えているかもしれないマトリックスは、コンストラクタを持っていないので、明示的にリセット()いずれかを使用して初期化する必要があります - 単位行列、またはセットの1つを構築するために.. ()関数(setTranslate、setRotateなど)を使用します。

+1

私はそのドキュメントが混乱していることがわかりました。ヘッダにはコンストラクタがないことが記述されていますが、さらに見下ろすとMatrixは実際には2つのコンストラクタを持ち、ゼロ引数コンストラクタのドキュメントではドキュメントと直接矛盾しているような "ヘッダーに –

+0

@ScottWバグレポート:[Matrixのページに関する情報の競合](http://code.google.com/p/android/issues/detail?id=34552) – Pang

関連する問題