How To Enable On-Screen Virtual Buttons On Any Android Ice Cream Sandwich ROM [Tutorial]

While most people prefer off-screen, real buttons for their smartphones and tablets, there are plenty who like virtual buttons because of their context-sensitivity. Any many of you will know, Ice Cream Sandwich for the Galaxy Nexus comes with these context-sensitive buttons and it is now possible to get it on any other Ice Cream Sandwich ROM. Check out the step-by-step guide after the jump.

News of the “mod” comes from XDA-Developers – a popular forum for Android enthusiasts, developers and hackers – in the form of a post on their official blog in which they discuss the hack’s guide by developer evilisto.


The method isn’t simple since you will have to do things like (de)compiling an APK and messing around with XML files which isn’t something we do everyday here at Redmond Pie.

Be sure to take a backup of the framework-res.apk file. You may need it in case the hack doesn’t work for your device.

DISCLAIMER: Redmond Pie will not be held responsible if you lose data or your device gets damaged in the following of this guide. Proceed at your own risk.

Step 1: Using a root-ready file explorer app like File Expert, extract a copy of framework-res.apk from system > framework to your desktop PC.

Step 2: Save the original APK separately and then use a copy for applying the hack. Decompile the copied APK using APK Tool. Try it with APK Tool 1.4.3, but if that doesn’t work, you can try out 1.4.2.

Step 3: Open bools.xml from /res/values/bools.xml using a text editor such as Notepad. Find config_showNavigationBar and set its value to true:


Step 4: If you turn off backlight for your real, off-screen capacitive buttons, you will need to edit arrays.xml:


Step 5: The developer suggests resizing the buttons to avoid keyboard overlapping problem. For this, you may open up dimens.xml, find navigation_bar_height and edit its value to something which suits you best:


Step 6: You must now compile the APK again. You may use aapt for this.

Step 7: Place the modified APK back to where it belongs i.e. system > framework. Do this using a file explorer on your PC.

If you followed the steps correctly, the hardware buttons on your device should be replaced by virtual buttons. If that isn’t the case, just restore the original APK which you backed up in Step 2 to get the hardware buttons back.

For queries, check out the official thread over on XDA-Developers.

You can follow us on Twitter, add us to your circle on Google+ or like our Facebook page to keep yourself updated on all the latest from Microsoft, Google, Apple and the web.