Does anyone know how I can create a floating window? (Image below shows what I mean) - source code
I've read on various websites that in order to do so an app must be running as a service which should in turn be running as an activity using 'TYPE_SYSTEM_ALERT'.
If the above is or isn't true ... I still don't know how to implement the code. Can someone write some code showing how a simple app (click button and do something) can be made into a floating window, Thank You :)
This may also help - facebook chatheads
The simplest way is to use the great open source Standout library: https://github.com/pingpongboss/StandOut
You can use WindowManager to inflate a view. Something like this:
LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
overlay = (RelativeLayout) inflater.inflate(R.layout.overlay, null);
final LayoutParams params = new LayoutParams(
LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT,
LayoutParams.TYPE_SYSTEM_ALERT,
LayoutParams.FLAG_NOT_FOCUSABLE | LayoutParams.FLAG_NOT_TOUCH_MODAL,
PixelFormat.TRANSLUCENT);
WindowManager wm = (WindowManager) getSystemService(WINDOW_SERVICE);
if (overlay.isShown()){
wm.updateViewLayout(overlay, params);
}
else {
// add overlay
wm.addView(overlay, params);
}
Whit this you can inflate any view on any application.
Hope it helps you!!
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With