Guest User

Untitled

a guest
Jun 13th, 2018
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.66 KB | None | 0 0
  1. fun ViewGroup.onKeyboardStateChanged(activity: Activity, listener: (Boolean) -> Unit) {
  2.  
  3. viewTreeObserver.addOnGlobalLayoutListener {
  4.  
  5. //Размер экрана
  6. val screenSize = Point()
  7. activity.windowManager.defaultDisplay.getSize(screenSize)
  8.  
  9. //Размер фрейма, который видит пользователь
  10. val rect = Rect()
  11. getWindowVisibleDisplayFrame(rect)
  12.  
  13. //Если есть разница -- значит что-то произошло. Вероятно, показалась клавиатура
  14. val diff = screenSize.y - rect.bottom
  15. listener.invoke(diff != 0)
  16. }
  17. }
Add Comment
Please, Sign In to add comment