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:
- Open the Settings β Display.
- Select Full Screen Mode (or Navigation buttons in older versions).
- Slip on the item Location of buttons (may be called the Order of the navigation buttons).
- 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
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:
- Go to Settings β Display β Full-screen mode.
- Choose Gestures (or Full Screen Gestures).
- Follow the hints on the screen for gesture training.
| Type of gesture | The "Back" gesture. | The home gesture | "Recent" gesture | Supported by MIUI |
|---|---|---|---|---|
| MIUI Full Screen | Swipe from right to left | Swipe up from the bottom edge | Swipe up and hold | 10β14 |
| Android 10+ Gestures | Swipe from left/right edge | Swipe up from the bottom edge | Swipe up and hold | 11β14 |
| Standard buttons | Tap on the back button | Tap on the home button | Tapping on the "Recent" button | All 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.
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:
- Connect the Mi 9 to your PC and confirm the debugging permission on your phone.
- 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?
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:
| Annex | Functions | Need root? | Reference |
|---|---|---|---|
| NavStar | Flexible setting of buttons, gestures, colors | No. | Google Play |
| Custom Navigation Bar | Change of order, add new buttons | No (but ADB rights are needed) | Google Play |
| Fluid Navigation Gestures | Replacement of buttons with gestures with customization | No. | Google Play |
Example of settings in NavStar:
- Install the app and grant permission to display over other windows.
- Choose the Navigation Bar β Button Layout.
- Drag the buttons in the right order (e.g., βRecent β Home β Backβ).
- 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:
- Open Settings β About Phone β The MIUI version and tap 10 times on the MIUI logo to activate Additional settings for developers.
- Return to Settings β Additional settings β For developers.
- 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.systemuiThis 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:
- Go to Settings β System β Gestures β System navigation.
- Select 3-button navigation (if you use buttons).
- Slip on the location of the buttons and select the desired order.
- 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:
- Settings β System β Gestures β System navigation β 3-button panel.
- 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.