ImageViewで画像表示

ImageViewで画像表示

使い道は、画像表示

ImageViewで画像表示するには
まず、レイアウトファイルでImageViewを定義する

次に、Javaで処理

mImageView = (ImageView)findViewById(R.id.imageview);
findViewById(R.id.scaleCenter).setOnClickListener(this);
findViewById(R.id.scaleFitCenter).setOnClickListener(this);
findViewById(R.id.scaleFitEnd).setOnClickListener(this);
findViewById(R.id.scaleFitStart).setOnClickListener(this);
findViewById(R.id.scaleFitXY).setOnClickListener(this);
findViewById(R.id.scaleFitMatrix).setOnClickListener(this);

次に、クリックイベントの設定

public void onClick(View v){

switch(v.getId()){

case R.id.scaleCenter:
mImageView.setScaleType(ImageView.ScaleType.CENTER);
break;

case R.id.scaleFitCenter:
mImageView.setScaleType(ImageView.ScaleType.FIT_CENTER);
break;

case R.id.scaleFitEnd:
mImageView.setScaleType(ImageView.ScaleType.FIT_END);
break;

case R.id.scaleStart:
mImageView.setScaleType(ImageView.ScaleType.FIT_START);
break;

case R.id.scaleFitXY:
mImageView.setScaleType(ImageView.ScaleType.FIT_XY);
break;

case R.id.scaleMatrix:
Matrix mtrx = new Matrix();
mImageView.setScaleType(ScaleType.MATRIX);
matrix.postRotate(90.0f, mImageView.getWidth()/3, mImageView.getHeight()/2);
mImageView.setImageMatrix(mtrx);
break;
}
}

ScaleTypeをセットすることで
画像の表示方法を設定できる

今回はボタンにセットすることで
画像表示方法を変えている

定数とその意味は

CENTER
サイズを変更せずにエリアの中央へ表示

CENTER_CROP
エリアの横幅まで画像を拡大し
中央へ表示

FIT_CENTER
エリアの縦幅まで画像を拡大、
中央へ表示

FIT_END
エリアの縦幅まで画像を拡大し
右端に寄せて表示

FIT_START
エリアの縦幅まで画像を拡大、
左端に寄せて表示

FIT_XY
エリア全体に画像を拡大して表示

MATRIX
エリアよ大きくても小さくてもそのまま表示

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です