Probably the most publicized cross platform mobile dev environment has been the Flash Platform. Whether you like Flash or not, Adobe has done some serious work to add the ability to build mobile apps into their Flash dev tools. Unfortunately, a lot of people think this now means that the resulting mobile apps will have […]
iCandy was my entry into the ScaleNine Skin to Win competition. It took third place and a copy of CS4 Web Premium. There were some hiccups in the process of getting these graphical skins into a Flex app, which anyone doing graphical skinning should be aware of (I’ve documented here), but overall I was happy […]
Having done several CSS skins for various projects in the past, recently, I had the opportunity to create a set of almost entirely graphical skins. Having stepped through that process, I wanted to write down some tips when attempting to create graphical skins. All of these skins were created using Flash CS3 as opposed to […]
This is old news for some, but seriously, after reading the skinning architecture docs and building a couple of sample skins using the Flex 4 SDK, I have to say that it completely rocks!Up until Flex 4, the approach for architecting UI components (starting back with MX2004 all the way up to Flex 3) has been largely the same. The result has generally been components with an amazingly wide feature set but that could take quite a bit of work to customize, particularly in regards to skinning. Each generation of components has improved upon the previous one, but after looking at the Gumbo components, I absolutely love the new true MVC approach. The fact that the view (skin) is pretty much completely decoupled from the controller makes customization more flexible and easier than ever.Here is a simple button skin built entirely in MXML. Not super complex, yet it shows how easy skinning really is. This example contains small customizations like animated transitions between states, lots of layered gradients, multiline label, label with glow, and others which could take quite a bit of work to implement in the existing framework.
One of the biggest issues for me in the Flash/Flex workflow has been bringing graphics created in Flash into Flex. Don’t get me wrong…I don’t think the workflow is hugely painful. All you need to do is draw in Flash, compile, embed the swf in your Flex app and you’re good to go. However, if […]
Previously, i discussed observations on UIComponent drawing. Before I follow with a simple example of how to apply that knowledge into extending a component, let’s look at some of the other bits in UIComponent that might help you as you extend or build your own components (and that are used in the example I’ll give): […]
Since everything in the Flex framework essentially must be a UIComponent, we’ll start with examining some of the inner workings of this class. In this Flexcerpt, we discuss how invalidation is implemented in UIComponent and why it is important when extending existing components or creating your own.Invalidation is based on the premise that all displayable objects (anything that is a DisplayObject) are only drawn to the stage once every frame (since Flash is timeline based). In a nutshell, invalidation refers to delaying the drawing of a component until the next frame, so that we save processor cycles by only running that draw code once. “Drawing” can refer to things such as sizing (including measuring), displaying text, updating a skin, or changing any visible property of a component.
Not really an official Flexcerpt, but something that might be useful when embedding assets…One thing that’s been discussed a lot is the hassle of embedding assets in Flex and then adding them to the stage. At the core of the issue is that everything in the Flex world IS a UIComponent. This is necessary so […]
In Flex 2, it’s pretty safe to say that we are presented with the largest framework ever developed for the Flash platform. What that means for us as developers is that we have more power at our fingertips than ever before to build larger, more robust applications. At the same time, it means that in […]
After taking a year away from the Flash world entirely (to reno and flip houses…that’s a story for another day), I’ve returned to experience a sense of excitement and energy that I haven’t felt personally since the days of Flash 3. Sure, there were other periods in Flash history that produced moments of near euphoria: […]