0

現在、ImageView と Matrix の翻訳を行っています。このコードで画像を翻訳してみます。

ImageView view = (ImageView) findViewById(R.id.imageView);
view.setScaleType(ImageView.ScaleType.MATRIX);

Matrix matrix = new Matrix();
matrix.postTranslate(0, 0);

view.setImageMatrix(matrix);

上記のコードでは、ImageView は画面の左上 (番号 1) に左上の画像を表示します。次に、翻訳値を期待する値に変更しようとしますmatrix.postTranslate(-1280, -960);(3 番) は、画像のサイズが 1280 x 960 px であるため、画面の外側に表示される画像です。しかし、結果は下の画像のようになります(番号2)。

ここに画像の説明を入力

*黒い長方形は、私のデバイスの画面に表示されているものです。

私の質問は、画像を-1280、-960に変換して画像を中央に移動するだけなのはなぜですか? 翻訳単位はピクセルではありませんか? または私はここで間違いを犯していますか?私のデバイスは、解像度 720 x 1280 ピクセルの Samsung Note 3 Neo です。

4

0 に答える 0