Android SDK FingerPaint示例
关于Android FingerPaint示例,我有一个简单的问题: (网站已更新,我的问题是关于旧版本,如下所述) 它做的第一件事就是Android SDK FingerPaint示例,android,sdk,Android,Sdk,关于Android FingerPaint示例,我有一个简单的问题: (网站已更新,我的问题是关于旧版本,如下所述) 它做的第一件事就是 setContentView(newmyview(this)) 在MyView构造函数中:(网站已更新,但当我从SDK加载示例时,就是这样,我的问题是关于此代码) 这基本上使位图为320 x 480,但当我在平板电脑或高分辨率手机上运行此代码时,我注意到它会缩放位图,使绘制对象适当地变大 我希望有相同的效果,但在我自己的容器myFrameLayout中。但是当
setContentView(newmyview(this))代码>
在MyView构造函数中:(网站已更新,但当我从SDK加载示例时,就是这样,我的问题是关于此代码)
这基本上使位图为320 x 480,但当我在平板电脑或高分辨率手机上运行此代码时,我注意到它会缩放位图,使绘制对象适当地变大
我希望有相同的效果,但在我自己的容器myFrameLayout中。但是当我从main.xml将相同的MyView应用于FrameLayout时(省略findViewById和all)
它实际上只使用了我整个FrameLayout的320 x 480区域,因此它绘制得很好,但只保留了(当我抬起手指时)在我FrameLayout左上角的一小块(320 x 480)上的绘制
如何使用320 x 480位图(如SDK示例中所示)缩放MyView并填充myFrameLayout的整个大小
(我知道我可以将320 x 480位图更改为适当的分辨率以填充所有内容,但这不是我想要的。)
这是我第一次问问题,所以如果问题不清楚,请告诉我。您将缩放位图创建。使用displaymetrics的显示请求屏幕宽度和高度,并将此值用于创建位图
public MyView(Context c) {
super(c);
mBitmap = Bitmap.createBitmap(320, 480, Bitmap.Config.ARGB_8888);
mCanvas = new Canvas(mBitmap);
mPath = new Path();
mBitmapPaint = new Paint(Paint.DITHER_FLAG);
}
setContentView(R.layout.main);
mV = new MyView(this);
((ViewGroup) myFrameLayout).addView(mV);