Thanks Thanks Thanks It Works :-D
On Wed, Dec 18, 2013 at 5:39 PM, Sumudu Chinthaka <[email protected]> wrote: > Thanks a Lot Maurice > ill try that and keep you posted > > > On Wed, Dec 18, 2013 at 5:22 PM, Maurice Amsellem < > [email protected]> wrote: > >> Ok, so Mobile ButtonSkin implementation is very different from desktop >> skin, that's why it's not working and why the previous advices don't stand, >> IMO. >> >> First of all, "textAlign" style applies to the text *inside* its >> bounding box, not its parent bounding box. >> - in desktop skin, the label takes all the width of the button, minus >> margins (left=10 right=10), so textAlign will have an effect. >> - but in mobile skin, the label width is set to the actual width of text, >> so changing textAlign has not effect. >> >> Anyway, if you look/debug into mobile ButtonSkinBase, you will notice >> there is a protected variable called "useCenterAlignment" that is to true >> by default, and controls how the label is aligned. >> Setting it to false, will align your label to the left. >> >> So you can simply override mobile ButtonSkin (not ButtonSkinBase) and set >> useCenterAlignment=false in the constructor. >> >> Regards, >> >> Maurice >> >> >> -----Message d'origine----- >> De : Maurice Amsellem [mailto:[email protected]] >> Envoyé : mercredi 18 décembre 2013 10:17 >> À : [email protected] >> Objet : RE: Spark Button textAlign >> >> Ah, that was mobile, not desktop :-) >> >> I will look at it and get back to you... >> >> Maurice >> >> -----Message d'origine----- >> De : Sumudu Chinthaka [mailto:[email protected]] Envoyé : mercredi 18 >> décembre 2013 09:57 À : [email protected] Objet : Re: Spark Button >> textAlign >> >> please find the link to the skin file >> >> >> https://drive.google.com/file/d/0B_2mxcIbB40qeUZsQVJqZGR0aGs/edit?usp=sharing >> >> >> >> >> On Wed, Dec 18, 2013 at 12:33 PM, Maurice Amsellem < >> [email protected]> wrote: >> >> > Attachments are stripped by mailing list. >> > Provide a public link, such as DropBox, or the like >> > >> > De : Sumudu Chinthaka [mailto:[email protected]] Envoyé : mercredi 18 >> > décembre 2013 00:46 À : [email protected] Objet : Re: Spark Button >> > textAlign >> > >> > Really appreciate your advice but still i'm failing to get this done >> > >> > i have copied ButtonSkin class and created MyButtonSkin class which >> > now extends from ButtonSkinBase and remove super.createChildren call >> > and include ButtonSkinBase createChildren content inside MyButtonSkin >> > createChildren content and set the textAlign property, but with no >> > luck >> > >> > i am attaching my Skin class here please please tell me what am i >> > doing wrong >> > >> > Thanks >> > Sumudu >> > >> > On Wed, Dec 18, 2013 at 4:37 AM, Maurice Amsellem < >> > [email protected]<mailto:[email protected]>> wrote: >> > You can copy the default skin of course, like Evyatar suggests. >> > That's the preferred solution. >> > >> > Regarding your initial approach of setting the textAlign style of >> > labelDisplay, it didn't work because it was done too early in >> > createChildren. >> > >> > If you do it after the components have been created, and their >> > properties /styles set, for example by overriding initialized() or by >> > adding a handler to creationComplete, then it will work. >> > >> > override public function set initialized(value: Boolean): void { >> > super.initialized = value; >> > UIComponent( labelDisplay).setStyle("textAlign", "left"); >> > } >> > >> > Maurice >> > >> > -----Message d'origine----- >> > De : Evyatar Ben Halevi-Arbib [mailto:[email protected]<mailto: >> > [email protected]>] >> > Envoyé : mardi 17 décembre 2013 21:14 >> > À : [email protected]<mailto:[email protected]> >> > Objet : Re: Spark Button textAlign >> > >> > When you create a new skin (at least in Flash Builder) you can start >> > by creating a copy of the default skin. >> > Just do that and on the Label MXML tag itself set the textAlign >> > property to left. >> > >> > Good luck, >> > Evyatar >> > >> > >> > On Tue, Dec 17, 2013 at 7:41 PM, Sumudu Chinthaka <[email protected] >> > <mailto:[email protected]>> wrote: >> > >> > > i have created a skin class that extends >> > > spark.skins.mobile.ButtonSkin and set textAlign to be left in >> > > createChildren method but it does not work >> > > >> > > package skins >> > > { >> > > import spark.skins.mobile.ButtonSkin; public class MyButtonSkin >> > > extends ButtonSkin { public function >> > > MyButtonSkin() { super(); } override protected function >> > > createChildren():void { super.createChildren(); >> > > labelDisplay.setStyle('textAlign','left'); >> > > } >> > > } >> > > } >> > > >> > > >> > > On Tue, Dec 17, 2013 at 7:31 PM, Maurice Amsellem < >> > > [email protected]<mailto:[email protected]>> >> wrote: >> > > >> > > > What do you mean by custom skin? >> > > > 1) Default skin customized through css styles (eg. textAlign)? >> > > > 2) Completely new skin class ? >> > > > >> > > > Maurice >> > > > >> > > > -----Message d'origine----- >> > > > De : Sumudu Chinthaka [mailto:[email protected]<mailto: >> > [email protected]>] Envoyé : mardi 17 >> > > > décembre 2013 14:45 À : [email protected]<mailto: >> > [email protected]> Objet : Spark Button >> > > > textAlign >> > > > >> > > > Hi All >> > > > >> > > > I want to crate a custom skin for a Spark button with textAlign to >> > > > be set to "left", but i found out there is a restriction set in >> > > > Button class >> > > that >> > > > prevent accepting textAlign values >> > > > >> > > > is there any way to override [Exclude(name="textAlign", >> > > > kind="style")] setting in Button subclass so that i can set this >> > > > through css >> > > > >> > > > or is there any alternative way to achieve this >> > > > >> > > > Thanks >> > > > Sumudu >> > > > >> > > >> > >> > >> > >
