DisplayMetricsTest


package hyz.com;
import zte.com.cn.R;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Matrix;
import android.graphics.drawable.BitmapDrawable;
import android.os.Bundle;
import android.util.DisplayMetrics;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
	
public class DisplayMetricsTest extends Activity 
{
	private TextView textview1;
	private Button button1,button2;
	private ImageView mImageView01;
	// 
    private DisplayMetrics dm;
    public void onCreate(Bundle savedInstanceState) 
    {
    	super.onCreate(savedInstanceState);
    	setContentView(R.layout.main);
    	textview1 = (TextView)findViewById(R.id.textview1);
    	mImageView01 = (ImageView)findViewById(R.id.myImageView1);
    	button1 = (Button)findViewById(R.id.button1);
    	button2 = (Button)findViewById(R.id.button2);
    	button1.setOnClickListener(new Button.OnClickListener()
    	{
    		public void onClick(View v)
    		{
    			dm = new DisplayMetrics();
    			getWindowManager().getDefaultDisplay().getMetrics(dm);
    			// px
    			String str =
    					"widthPixels:" + dm.widthPixels + "
" + "heightPixels:" + dm.heightPixels + "
" + "density:" + dm.density + "
" + "densityDpi:" + dm.densityDpi + "
" + "scaledDensity:" + dm.scaledDensity + "
" + "xdpi:" + dm.xdpi + "
" + "ydpi:" + dm.ydpi + "
" + "DENSITY_DEFAULT:" + DisplayMetrics.DENSITY_DEFAULT + "
" + "DENSITY_HIGH:" + DisplayMetrics.DENSITY_HIGH + "
" + "DENSITY_LOW:" + DisplayMetrics.DENSITY_LOW + "
" + "DENSITY_MEDIUM:" + DisplayMetrics.DENSITY_MEDIUM; textview1.setText(str); } }); button2.setOnClickListener(new Button.OnClickListener() { public void onClick(View v) { show(); } }); } // private void show() { DisplayMetrics dm=new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); Bitmap bmp=BitmapFactory.decodeResource(getResources(), R.drawable.hi); /* Matrix */ float scaleWidth = ((float) dm.widthPixels) / bmp.getWidth(); float scaleHeight = ((float) dm.heightPixels) / bmp.getHeight() ; Matrix matrix = new Matrix(); matrix.postScale(scaleWidth, scaleHeight); /* ReSize  */ Bitmap resizedBitmap = Bitmap.createBitmap(bmp,0,0,bmp.getWidth(),bmp.getHeight(),matrix,true); // Drawable BitmapDrawable myNewBitmapDrawable = new BitmapDrawable(resizedBitmap); mImageView01.setImageDrawable(myNewBitmapDrawable); mImageView01.setVisibility(View.VISIBLE); } }