您的位置:首页 > 其它

Canvas显示图像

2010-10-07 22:46 246 查看
今天在网上看到一篇帖子,讲用Canvas来显示图像,就实践一下。

源代码如下:

public class MainActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new Panel(this));
}

class MyPanel extends View{
public MyPanel(Context context) {
super(context);
}
public void onDraw(Canvas canvas){
Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.pic180);
canvas.drawColor(Color.BLACK);
canvas.drawBitmap(bmp, 10, 10, null);
}
}
}


1、setContentView(new Panel(this)); 平时我们都用setContentView(int ResourceId);

刚刚看了下代码,发现这个方法原来有多种调用形式

除了上面2种,还有setContentView(View view, ViewGroup.LayoutParams params)。

2、关于图片的缩放旋转

这个就要用到matrix了,主要是修改onDraw里面内容如下:

public void onDraw(Canvas canvas){
Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.girl);
canvas.drawColor(Color.BLACK);
Matrix mx = new Matrix();
mx.postScale(0.2f,0.2f);
//canvas.drawBitmap(bmp, 10, 10, null);
canvas.drawBitmap(bmp,mx,null);
}


对matrix有不同的操作,就会有不同的显示效果。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: