'How to properly display floating Buttons on top of BottomNavigationView?

I want to display 2 "floating buttons" a bit on top of a BottomNavigationView if one of its menu is clicked.

Here's my attempt. Basically it uses an AlertDialog supplied with a LinearLayout (full code: https://github.com/anta40/ButtonAnimTest)

enter image description here

 bottomNav.setOnItemSelectedListener { menu ->
        when (menu.itemId){
            R.id.game_menu -> {
                val dialogBuilder = AlertDialog.Builder(this)
                val customView = layoutInflater.inflate(R.layout.custom_alert_layout, null)
                dialogBuilder.setView(customView)
                dialogBuilder.setCancelable(true)


                val btnYes = customView.findViewById<Button>(R.id.btn_dialog_yes)
                val btnNo = customView.findViewById<Button>(R.id.btn_dialog_no)

                /*
                taken from https://stackoverflow.com/questions/9467026/changing-position-of-the-dialog-on-screen-android
                 */
                val alert = dialogBuilder.create()
                val dialogWindow = alert.window

                val layoutParams = dialogWindow!!.attributes
                layoutParams.gravity = Gravity.BOTTOM or Gravity.CENTER_HORIZONTAL
                layoutParams.flags = layoutParams.flags and WindowManager.LayoutParams.FLAG_DIM_BEHIND.inv()
                dialogWindow.attributes = layoutParams
                dialogWindow.setBackgroundDrawable(ColorDrawable(android.graphics.Color.TRANSPARENT))

                btnYes.setOnClickListener {
                    alert.dismiss()
                }

                btnNo.setOnClickListener {
                    alert.dismiss()
                }

                alert.show()
                true
            }
        }
        false
    }
}

There are 2 problems:

  1. The LinearLayout is displayed too high, aligned with the TitleBar. What I want is just a little bit on top of the BottomNavigationView, like 10dp or 20dp.
  2. The screen is dimmed a bit. I don't want the brightness to be changed when those buttons appear.

How to fix these?



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source