A virtual dPad is handy if you have a game which moves something on the screen. It also looks a bit more polished than just having four buttons. I have whipped up a simple skinnable class (http://codeatuts.blogspot.com.au/2012/07/tutorial-8-directional-pad-dpad-class.html) with 5 downloadable sample skins for folks to play with. It extends @Vega’s mesh button class.
This is version 1.0 so it is very basic. It only uses CENTER alignment at the moment and sprites for the skin. At some point I will have a go at a version which just uses meshes (unless some mesh guru does it first…)
Fell free to use, hack, improve, comment or otherwise dismember the code.