Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/179.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
Java SurfaceView从getWidth()提供0_Java_Android - Fatal编程技术网

Java SurfaceView从getWidth()提供0

Java SurfaceView从getWidth()提供0,java,android,Java,Android,我从我的SurfaceView对象中得到O,尽管在构造函数中我得到了一个非零值 mView=new MainView(this); FrameLayout fL=new FrameLayout(this); fL.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT)); Button zoomIn=new Butt

我从我的SurfaceView对象中得到O,尽管在构造函数中我得到了一个非零值

        mView=new MainView(this);
        FrameLayout fL=new FrameLayout(this);
        fL.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT));

        Button zoomIn=new Button(this);

        zoomIn.setLayoutParams(new LayoutParams(mView.getwidth()/50,mView.getwidth()/50));
        zoomIn.setX(mView.getwidth()/2);
        zoomIn.setY(mView.getHeight()/2);
        zoomIn.setOnClickListener(new OnClickListener(){

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub

                mView.mThread.testzoom(1.5f);
                mView.mThread.zBackground.setZoomedBitmap();
            }

        });

        fL.addView(mView);
        fL.addView(zoomIn);


        Log.e("MainActivity","First Start of MainActivity");
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                             WindowManager.LayoutParams.FLAG_FULLSCREEN);

        setContentView(fL);
我只是希望我的按钮集中在框架布局上…(layoutparams来自framelayout,因为我正在导入它,所以jsut需要调用layoutparams.xxxxxx)


为什么会这样?我的按钮在x和y上有0个维度

看看这个:是的,但我用我的SurfaceView获得宽度和高度。在SurfaceView的构造函数中,当我执行new MainView(此)时,getWidth()和getHeight返回非零。但是在构造器之外的几个时钟之后,它会吗?……有点奇怪……它与我的全屏标志有关吗。我知道我必须在设置内容视图之前按特定顺序排列它们,所以我认为这样可以,但可能会影响按钮…你认为呢?