Итак, я делаю липкую заметку, которая всегда появляется сверху, и пользователь может нажать на нее, чтобы напечатать на ней. Итак, вот мой рабочий код:
mWindowManager = (WindowManager) getSystemService(WINDOW_SERVICE);
LayoutInflater layoutInflater =
(LayoutInflater)this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
myView = layoutInflater.inflate(R.layout.notepad, null ); //notepad.xml contains the EditText
WindowManager.LayoutParams params = new WindowManager.LayoutParams(
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY,
WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON,
PixelFormat.TRANSLUCENT);
mWindowManager.addView(myView, params);
Проблема в том, что когда я использую флаг TYPE_SYSTEM_OVERLAY, я не могу получить фокус для ввода EditText. Альтернативой может быть использование TYPE_SYSTEM_ALERT, и я могу использовать EditText для ввода, но тогда весь фон зависнет. Как я могу разрешить пользователю печатать, не прерывая фоновую деятельность (ака игра, видео, прокрутка через Facebook и т. д.)