Reassign buttons to Xiaomi Mi 9: 4 proven ways with nuances

Xiaomi Mi 9 is still a popular smartphone due to the powerful β€œiron” and flexible firmware MIUI. But the standard button layouts β€” especially Back, Home and Recent β€” don't always suit users, and some people are used to the reverse order of other Android devices, and some people are uncomfortable reaching the thumb to the top of the button. In this article, we will analyze all the working ways to swap the buttons on the Xiaomi Mi 9, including hidden settings, ADB-commands and third-party utilities.

Important: the procedure differs depending on the version of MIUI (global, Chinese, custom) and the type of buttons (physical on the Mi 9 are absent - only touch).We will look at options for all current firmware, including a specific bug with floating buttons in MIUI 12.5, which requires a separate solution.

1. Method through standard MIUI settings (without root)

The easiest method is to use built-in system options, which is suitable for most versions of MIUI 10-14, but has limitations:

  • πŸ”„ You can only swap the β€œBack” and β€œRecent” (the Home button remains in place).
  • πŸ“± It only works on touch buttons (no other ones are available on the Mi 9).
  • βš™οΈ In some regional firmware, the option is hidden – you will need to activate Advanced settings.

Instructions:

  1. Open the Settings β†’ Display.
  2. Select Full Screen Mode (or Navigation buttons in older versions).
  3. Slip on the item Location of buttons (may be called the Order of the navigation buttons).
  4. Select the reverse order option (or drag and drop icons manually if supported).

⚠️ Note: On Chinese firmware (China) ROM) This item is often missing. ADB (Section 3) or install a global version MIUI.

β˜‘οΈ Preparation for button changes

Done: 0 / 4

2. Use gestures instead of buttons (alternative approach)

If you're uncomfortable with the buttons, consider switching to gesture control completely, which not only solves the button order problem, but also frees up the screen. Mi 9 supports two types of gestures:

  • πŸ‘† MIUI Full Screen Gestures (standard gestures from Xiaomi): wire from the bottom edge up to return to the main screen, swipe from right to left for "BackΒ».
  • πŸ“± Android 10+ Gestures (Google system gestures): wire from the bottom edge up and hold for multitasking, swipe from the edge for "BackΒ».

How to turn on:

  1. Go to Settings β†’ Display β†’ Full-screen mode.
  2. Choose Gestures (or Full Screen Gestures).
  3. Follow the hints on the screen for gesture training.
Type of gestureThe "Back" gesture.The home gesture"Recent" gestureSupported by MIUI
MIUI Full ScreenSwipe from right to leftSwipe up from the bottom edgeSwipe up and hold10–14
Android 10+ GesturesSwipe from left/right edgeSwipe up from the bottom edgeSwipe up and hold11–14
Standard buttonsTap on the back buttonTap on the home buttonTapping on the "Recent" buttonAll versions.

The advantage of gestures is that they don't have to be physically linked to the buttons, but some users complain about random triggers, especially in games. If that's your case, go back to the buttons and use the methods in the following sections.

πŸ“Š Which navigation system do you prefer?
Standard buttons
MIUI gestures
Android gestures
The side of the launchers (Nova, Apex, etc.)

3. Reassign buttons via ADB (for power users)

If the standard settings do not provide the necessary flexibility, you can use ADB (Android Debug Bridge), which allows you to swap buttons in any way, including repositioning β€œhome”, as well as as assigning other actions to them (for example, launching an application).

Requirements:

  • πŸ–₯️ Computer with installed ADB and drivers for Xiaomi Mi 9.
  • πŸ”Œ Included debugging by USB (Settings β†’ The phone. β†’ Version. MIUI β†’ 7 times to tap the version number β†’ return to additional settings β†’ For developers β†’ Debugging by USB).
  • πŸ“‹ Backup of data (in case of failure).

Instructions:

  1. Connect the Mi 9 to your PC and confirm the debugging permission on your phone.
  2. Open the command line (Windows) or terminal (macOS/Linux) and type:
adb shell settings put secure sysui_nav_bar "space,back;home;recent,space"

This team will swap the "Back" and "Recent" places, leaving the "Home" in the center. To return the standard order, use:

adb shell settings put secure sysui_nav_bar "space,recent;home;back,space"

⚠️ Note: On some Mi 9 firmware (especially custom ones), this command can reset the navigation bar settings. If the buttons disappear after execution, restart the phone or return the standard order with the command above.

What if the ADB does not recognize the device?
1. Make sure that the debugging is enabled by USB and you have confirmed the permission on PC.2. Check if the drivers are installed for Xiaomi (download Mi). PC Suite from the official website).3. Try another one USB-cable (preferably original).4. Enter adb devices in the command line – if the device does not appear, reinstall ADB.

4. Third-party applications for button customization

If previous methods do not work, you can use apps from Google Play. They offer advanced features, including:

  • πŸ”€ Completely reposition the buttons in any order.
  • 🎨 Changes in appearance (color, transparency, animations).
  • ⚑ Assignment of additional actions (double pressing, retention).

The best apps for Xiaomi Mi 9:

AnnexFunctionsNeed root?Reference
NavStarFlexible setting of buttons, gestures, colorsNo.Google Play
Custom Navigation BarChange of order, add new buttonsNo (but ADB rights are needed)Google Play
Fluid Navigation GesturesReplacement of buttons with gestures with customizationNo.Google Play

Example of settings in NavStar:

  1. Install the app and grant permission to display over other windows.
  2. Choose the Navigation Bar β†’ Button Layout.
  3. Drag the buttons in the right order (e.g., β€œRecent β†’ Home β†’ Back”).
  4. Activate the Enable NavStar switch.

⚠️ Note: Some applications (such as Custom Navigation Bar) require execution. ADB-- Special permissions commands. Instructions are usually given in the application description.

πŸ’‘

If after installing a third-party launcher (Nova, Apex) navigation buttons have disappeared, check the launcher settings: often there is an option β€œHide the navigation bar”.

5. Solving the problem with floating buttons in MIUI 12.5

The Xiaomi Mi 9 version of MIUI 12.5 is known for a bug in which the navigation buttons spontaneously change location or disappear after a reboot, due to a conflict between system animations and the SystemUI service.

How to fix it:

  1. Open Settings β†’ About Phone β†’ The MIUI version and tap 10 times on the MIUI logo to activate Additional settings for developers.
  2. Return to Settings β†’ Additional settings β†’ For developers.
  3. Find options: Turn off window animation (set animation disabled); disable transition animation (also animation disabled); disable duration animation (set 0x).

Reboot the phone.

If the problem persists, reset SystemUI via ADB:

adb shell pm clear com.android.systemui

This will return the buttons to standard state without losing data.

πŸ’‘

The floating button bug in MIUI 12.5 often appears after the β€œover the air” update. If you encounter this problem, check for new patches in Settings β†’ System Update before resetting SystemUI.

6. Reassign buttons on custom firmware (LineageOS, Pixel Experience)

If you use custom firmware on Xiaomi Mi 9 (like LineageOS or Pixel Experience), the button reassignment process is different. Most custom builds use the standard Android Navigation Bar, which is customizable via:

  • πŸ“± Settings β†’ System system β†’ Gestures β†’ System navigation.
  • πŸ”§ Settings β†’ Buttons (in some firmware).

Instructions for LineageOS:

  1. Go to Settings β†’ System β†’ Gestures β†’ System navigation.
  2. Select 3-button navigation (if you use buttons).
  3. Slip on the location of the buttons and select the desired order.
  4. For additional settings (such as retention actions), use the Magisk NavBar Tuner module.

On Pixel Experience, the order of the buttons changes similarly to Android’s stock:

  1. Settings β†’ System β†’ Gestures β†’ System navigation β†’ 3-button panel.
  2. Select reverse order in the panel settings.

⚠️ Note: Some custom firmware for Mi 9 (e.g. Havoc-OS) may have button settings in the Settings section. β†’ Havoc Settings β†’ Navigation bar. If you don't find an option, check the documentation for your firmware.

FAQ: Frequent questions about reassigning buttons to Xiaomi Mi 9

Can I swap the "Loudness" and "Nutrition" buttons?
No, on the Xiaomi Mi 9, the hardware volume and power buttons are not reassigned at the software level. Their location is fixed at the device schema level. The only way to change the functionality is to sell the buttons physically (which is not recommended) or use applications like Button Mapper, but they work only with program actions (for example, launching an application when holding).
After the MIUI update, the buttons dropped. How do I get my order back?
Updates MIUI They often reset navigation settings. Try: Get back in order through Settings. β†’ Display. β†’ Full screen mode. If you're not available, follow. ADB-command from section 3. For custom firmware, check the settings in the System section β†’ If nothing helps, reset SystemUI (Section 5 command).
Can I assign another action to the β€œRecent” button, such as launching Google Assistant?
Yes, but you will need to use the Button Mapper app (requires root or ADB-Or install a Tasker. + AutoInput plugin for creating custom actions. Example of commands ADB, To assign a "Recent" launch of the Assistant to hold: adb shell settings put secure assistant "com.google.android.googlequicksearchbox/com.google.android.apps.gsa.staticplugins.opa.OpaActivity"
Why do they return to the ADB buttons after changing them?
This is due to conflict with the system services. MIUI. Solutions: Execute Adb shell settings put global policy_control immersive.full=* (Use the Xiaomi Navbar Tuner Magisk module to fix the settings. MIUI (If the problem occurs after the update).
Does this work on the Xiaomi Mi 9 SE or Mi 9 Pro?
Yes, all of the described methods (except for Mi 9-specific bugs) are applicable to other models of the series: Xiaomi Mi 9 SE β€” The same procedure, but consider the smaller screen size (buttons may seem cramped). - Xiaomi Mi 9 Pro 5G β€” supportive ADB-team, but in the firmware for 5G-There may be additional limitations on the models. 9T (The procedure is similar, but the path to settings may differ due to a different launcher.