Ricardo (e restantes),infelizmente (e já me "queixei" disso à Adobe) o includeIn aparentemente redesenha as views sempre que se entra num estado. Isto é, da nossa experiência quando o utilizador entra na view a primeira vez o utilizador sente uns millisegundos de tempo de espera. Quando entra a segunda vez, volta a sentir esses millisegundos - que não deviam acontecer. A questão é que aparentemente a view já está instanciada, mas o SDK volta a executar o código da layouting (?).
Fizemos testes e mudamos para o visible e includeInLayout em vez do includeIn. O resultado é que a aplicacão demora mais a arrancar (a instanciacão das views é passada para o arranque), mas a partir daí a experiência com o utilizador é substancialmente superior, com reacções imediatas na navegação.
Isto só se nota em views muito complexas, sobretudo quando se utilizam Forms, Datagrid e/ou muitos item renderers em liquid layout.
Curiosamente, tenho que voltar a testar o includeIn para ver se na última actualizacão do SDK já houveram melhorias neste tópico.
linkedIn <http://pt.linkedin.com/in/jsaleiro> João Saleiro Chief Technology Officer Tel: 00351 916 077 097 Email: [email protected] <mailto:[email protected]> Skype: joao.saleiro <callto://joao.saleiro>Webfuel Solutions <http://www.webfuel.pt> www.webfuel.pt <http://www.webfuel.pt>
Lisbon, Portugal On 16-06-2011 18:05, Ricardo Araújo wrote:
(nota: n�s usamos o includeInLayout e o visible neste caso em vez de States por quest�es de performance. Mas isso � outra discuss�o...). btw, qual a diferença então entre usar o includeInLayout+visible ou o includeIn? usas na mesma os states... e quando o componente é criado no includeIn depois continua em memoria!!! ... On Jun 16, 5:38 pm, Ricardo Araújo<[email protected]> wrote:Já percebi ... ... desculpa J.Fernandes, não estava a entender.... acaba por ser o mesmo método que o J.Salgueiro me indicou... Obrigado ... fico-vos eternamente agradecido ;) On Jun 16, 5:27 pm, Ricardo Araújo<[email protected]> wrote:JF, já me tinha passado pela cabeça... mas depois a minha class mãe onde estaria o principal código estaria dentro de um componente que estende de SkinnableComponent! Seria isto correcto!? penso que isso traz-me outro problema... se quiser colocar as atribuições de skins num css para que possa mudar facilmente o código que estava dentro da skinnablecomponent terá que ser duplicado para outros grupos de skins! On Jun 16, 5:19 pm, João Fernandes <[email protected]> wrote:Podes fazer exactamente isso, criar um custom component onde defines novos skinParts e depois é só associares uma skin ao mesmo. Se quizeres para o mesmo custom component vários aspectos só terás de definir uma nova skin e meteres as skinParts onde bem entenderes. João Fernandes 2011/6/16 Ricardo Araújo<[email protected]>Ajudou, mas ainda tenho umas dúvidas.... por exemplo: crio um projecto novo, e na WindowedApplication coloco-lhe dois botões normais<s:Button /> ... depois como é que eu na skin que aplicar ao WindowedApplication posso definir por exemplo posições para cada botão? (se fosse um SkinnableComponent diria que aquele botão era uma SkinPart) On Jun 16, 4:57 pm, João Saleiro<[email protected]> wrote:Ricardo, n�o percebi bem a tua quest�o. N�s aqui resolvemos a quest�o do multi-skinning com facilidade, usando stylesheets CSS. Cada theme tem o seu pr�prio CSS que define o aspecto gr�fico de*todose quaisquer* componentes visuais. A t�tulo de exemplo: s|Application { skin-class: ClassReference("com.airgile.crm.skins.petro.views.core.ApplicationSkin"); } view3|NotificationBox { skin-class:ClassReference("pt.webfuel.core.ui.notification.view.skin.NotificationBoxSk in");} core|AirgileView { skin-class: ClassReference("com.airgile.crm.skins.petro.views.core.AirgileViewSkin"); } s|TextArea { skin-class:ClassReference("com.airgile.skins.petro.components.textarea.TextAreaSkin");focus-alpha: 0; } Quando queres mudar o theme, simplesmente trocas o CSS (usando ou n�o Runtime CSS). Espero que ajude. linkedIn<http://pt.linkedin.com/in/jsaleiro> Jo�o Saleiro Chief Technology Officer Tel: 00351 916 077 097 Email: [email protected]<mailto:[email protected]> Skype: joao.saleiro<callto://joao.saleiro> Webfuel Solutions<http://www.webfuel.pt> www.webfuel.pt <http://www.webfuel.pt> Lisbon, Portugal On 16-06-2011 16:42, Ricardo Ara�jo wrote:Boa tarde malta, Estou aqui a planear uma aplica��o em que pretendo personaliza-la a n�vel do design para cada cliente. Aplico uma skin � WindowedApplication e depois queria na pr�priaskinaplicar skins doutros componentes que est�o dentro da WindowedApplication... como fa�o? provavelmente n�o se faz assim? :) ... � que depois teria que dizer que um componente declarado em mxml seria uma SkinPart... Existe por exemplo outro caso de um ecr� em que s�o constru�dos objectos dinamicamente no componente que estende do skinnablecomponent. Como fa�o para criar skin parts dinamicamente? e depois na skin como lido com esses objectos que foram criados?-- Recebeu esta mensagem porque está inscrito no grupo "Mailing List da Comunidade Portuguesa de Rich Internet Applications -www.riapt.org" dos Grupos do Google. Para publicar uma mensagem neste grupo, envie um e-mail para [email protected]. Para anular a inscrição neste grupo, envie um e-mail para [email protected]. Para ver mais opções, visite este grupo em http://groups.google.com/group/riapt?hl=pt-PT.-- João Fernandes
-- Recebeu esta mensagem porque está inscrito no grupo "Mailing List da Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" dos Grupos do Google. Para publicar uma mensagem neste grupo, envie um e-mail para [email protected]. Para anular a inscrição neste grupo, envie um e-mail para [email protected]. Para ver mais opções, visite este grupo em http://groups.google.com/group/riapt?hl=pt-PT.
<<inline: LinkedIn.gif>>
<<inline: Webfuel.gif>>
