Java 安卓系统覆盖4.2.2

Java 安卓系统覆盖4.2.2,java,android,eclipse,android-softkeyboard,Java,Android,Eclipse,Android Softkeyboard,这只是一段代码。我的第一个问题是在视图中接收触摸,这可以做到,但是,当此服务运行时,触摸其他应用程序中的编辑文本框时,软键盘无法打开。我尝试了各种各样的标志来解决这个问题,但是我失去了将触摸事件注册到屏幕部分的能力,如上面代码中所示 我没有主意了,有没有人知道我哪里出了问题,或者Android 4.2.2+的替代解决方案?试试这个: // fetch window manager object mWindowManager = (WindowManager) getSyste

这只是一段代码。我的第一个问题是在视图中接收触摸,这可以做到,但是,当此服务运行时,触摸其他应用程序中的编辑文本框时,软键盘无法打开。我尝试了各种各样的标志来解决这个问题,但是我失去了将触摸事件注册到屏幕部分的能力,如上面代码中所示

我没有主意了,有没有人知道我哪里出了问题,或者Android 4.2.2+的替代解决方案?

试试这个:

    // fetch window manager object 
     mWindowManager = (WindowManager) getSystemService(WINDOW_SERVICE);
     // set layout parameter of window manager
     WindowManager.LayoutParams mParams = new WindowManager.LayoutParams(
                30, // width of layout 30 px
                200, // height is equal to full screen
                WindowManager.LayoutParams.TYPE_PHONE, // Type Ohone, These are non-application windows providing user interaction with the phone (in particular incoming calls).
                WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL,
               // WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH // this window won't ever get key input focus  
                PixelFormat.TRANSLUCENT
                );      
     mParams.gravity = Gravity.LEFT | Gravity.TOP;   
     //mParams.setTitle("Load Average");

     LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);

     mWindowManager.addView(touchLayout, mParams);

     touchLayout.setOnTouchListener(this);

我想你使用的是标准的安卓键盘,而不是第三方键盘,对吧?
Dialog dialog = new Dialog(this,android.R.style.Theme_DeviceDefault_Dialog_NoActionBar_MinWidth);
    dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
    dialog.setContentView(new EditText(this));
    dialog.show();