Very nice examples with Starling Framework. There is also a book 😉
Download it from here.
One of the main differences when creating mobile Flex AIR apps from normal Flex Apps is that it’s better to use ActionScript only skins. With that in mind I’ve created a simple skin for image buttons.
Why this skin is better than using the default spark.skins.mobile.ButtonSkin? The answer is quite simple – performance. Since this is going to be an image only skin, we don’t need label element and all the other functionality the default mobile button skin has.
In order to use the class you just create a new skin extending the ImageButtonSkin. The properties you have to set inside tour constructor are upBorderSkin, downBorderSkin, measuredDefaultWidth and measuredDefaultHeight.
For the border skin properties you can use – images, SWF symbols, FGX files
Usage example:
public class ExampleButtonSkin extends ImageButtonSkin { [Embed(source="/assets/buttons/Example_up.png")] private var up:Class; [Embed(source="/assets/buttons/Example_down.png")] private var down:Class; public function ExampleButtonSkin ButtonSkin() { super(); upBorderSkin = up; downBorderSkin = down; measuredDefaultWidth = 230; measuredDefaultHeight = 80; } }
If you want to use FXG border skins then you don’t need up and down variabled. You can set the FXG classes on the upBorderSkin and downBorderSkin directly.
Continue reading Creating an image only mobile button skins for Flex 4 (AIR Mobile)
Just a simple extend to the JavaScript String prototype which makes things much more readable 🙂
String.prototype.beginsWith = function(str) {return (this.match("^"+str)==str)} String.prototype.endsWith = function(str) {return (this.match(str+"$")==str)} String.prototype.format = function() { var s = this, i = arguments.length; while (i--) { s = s.replace(new RegExp('\{' + i + '\}', 'gm'), arguments[i]); } return s; };
Example:
var str = 'Just a {0} test to {1} if things works. Really {0}, isn't it?'; alert(str.format('simple', 'see');
Although adding AIR 3.2 in Flash Builder is an easy task, the situation with Flash CS 5.5 is not the same. This article really helped me. It’s a little bit hacky, but who cares when it works 🙂