Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/205.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android SDK FingerPaint示例_Android_Sdk - Fatal编程技术网

Android SDK FingerPaint示例

Android SDK FingerPaint示例,android,sdk,Android,Sdk,关于Android FingerPaint示例,我有一个简单的问题: (网站已更新,我的问题是关于旧版本,如下所述) 它做的第一件事就是 setContentView(newmyview(this)) 在MyView构造函数中:(网站已更新,但当我从SDK加载示例时,就是这样,我的问题是关于此代码) 这基本上使位图为320 x 480,但当我在平板电脑或高分辨率手机上运行此代码时,我注意到它会缩放位图,使绘制对象适当地变大 我希望有相同的效果,但在我自己的容器myFrameLayout中。但是当

关于Android FingerPaint示例,我有一个简单的问题: (网站已更新,我的问题是关于旧版本,如下所述)

它做的第一件事就是

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);