Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/396.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.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 我可以通过拖动按钮来移动我的尺寸对话框吗?_Java_Android_Android Studio_Dialog_Touch Event - Fatal编程技术网

Java 我可以通过拖动按钮来移动我的尺寸对话框吗?

Java 我可以通过拖动按钮来移动我的尺寸对话框吗?,java,android,android-studio,dialog,touch-event,Java,Android,Android Studio,Dialog,Touch Event,在对话框中拖动按钮时,我需要更改对话框的尺寸,具体取决于拖动按钮的位置 final Dialog hojaDialog = new Dialog(this, R.style.NewDialog); hojaDialog.setContentView(R.layout.hoja); final Window window = hojaDialog.getWindow(); final WindowManager.LayoutParam

在对话框中拖动按钮时,我需要更改对话框的尺寸,具体取决于拖动按钮的位置

        final Dialog hojaDialog = new Dialog(this, R.style.NewDialog);
        hojaDialog.setContentView(R.layout.hoja);
        final Window window = hojaDialog.getWindow();
        final WindowManager.LayoutParams wlp = window.getAttributes();
        wlp.width=400;
        wlp.height=800;
        wlp.gravity = Gravity.BOTTOM;
        window.setAttributes(wlp);
        final Button btn = (Button)hojaDialog.findViewById(R.id.button);
        btn.setOnTouchListener(new View.OnTouchListener() {
            public boolean onTouch(View v, MotionEvent me){
                if (me.getAction() == MotionEvent.ACTION_DOWN){
                    float oldXvalue = me.getX();
                    float oldYvalue = me.getY();

                }else if (me.getAction() == MotionEvent.ACTION_MOVE  ){
                    int oldXvalue = (int)me.getX();
                    int oldYvalue = (int)me.getY();


                    hojaDialog.getWindow().setLayout(oldXvalue, oldYvalue);

                }
                return true;
            }
        });