Orkut Gmail Agenda Docs Web mais »
Grupos visitados recentemente | Ajuda | Acessar
Página inicial dos Grupos do Google
Mensagem sobre o tópico <mx:List com ItemRenderer, RefreshPolicy
O grupo no qual você está postando é um grupo da Usenet. As mensagens postadas neste grupo farão com que o seu e-mail fique visível para qualquer pessoa na internet.
Sua resposta não foi enviada.
Postagem publicada
 
De:
Para:
Cc:
Encaminhar para
Adicionar Cc | Adicionar Encaminhar para | Editar Assunto
Assunto:
Validação:
Com o objetivo de verificação, digite os caracteres que você vê na figura abaixo ou os números que ouvir ao clicar no ícone de acessibilidade. Ouça e digite os números que ouvir
 
Ricardo Ramires  
Ver perfil   Traduzir para Traduzido (ver original)
 Mais opções 23 out 2007, 16:59
De: Ricardo Ramires <rramire...@gmail.com>
Data: Tue, 23 Oct 2007 12:59:16 -0700
Local: Ter 23 out 2007 16:59
Assunto: Re: <mx:List com ItemRenderer, RefreshPolicy
Também to me batendo com isso...

Beck esses tempos atráz vc me passou um link c/ a sua palestra sobre a
criacao de components, ajudou bastante a criar esse itemRenderer para
meu projeto:

package views
{
        import flash.geom.Rectangle;
        import mx.core.IDataRenderer;
        import mx.core.UIComponent;
        import mx.controls.listClasses.IListItemRenderer;
        import flash.display.DisplayObjectContainer;
        import flash.events.Event;
        import mx.managers.ISystemManager;
        import flash.display.Sprite;
        import flash.display.DisplayObject;
        import mx.events.FlexEvent;
        import mx.controls.Button;
        import mx.containers.HBox;
        import mx.controls.Label;
        import flash.text.TextField;

        [Event(name="dataChange", type="mx.events.FlexEvent")]

        public class LoaderRenderer extends UIComponent implements
IDataRenderer, IListItemRenderer
        {
                private var _data : Object = null;
                private var imgContainer:Sprite;
                private var tamanho_txt:TextField;

                public function LoaderRenderer()
                {
                        super();
                        this.width = 160;
                        this.height = 120;
                }

        [Bindable("dataChange")]
        public function get data():Object
        {
            return _data;
        }

        public function set data(value:Object):void
        {
            _data = value;
            invalidateProperties();
            dispatchEvent(new FlexEvent(FlexEvent.DATA_CHANGE));
        }

        override protected function createChildren():void {

                        super.createChildren();

                        if(!imgContainer){
                                imgContainer = new Sprite();
                                imgContainer.x += 2;
                                addChild(imgContainer);
                        }

                        if(!compContainer){
                                var compContainer:HBox = new HBox();
                                compContainer.x += 2;
                        }

                        if(!tamanho_txt){
                                tamanho_txt = new TextField();
                                tamanho_txt.x += 5;
                                tamanho_txt.selectable = false;
                                tamanho_txt.textColor = 0xFFFF00;
                                addChild(tamanho_txt);
                        }
                }

                override protected function commitProperties():void
                {
                        super.commitProperties();

                        if (_data != null)
            {
               imgContainer.addChild(_data.image);
               tamanho_txt.text = _data.tamanho;
            }
                }

        /* override protected function updateDisplayList(w:Number,
h:Number):void
        {
            super.updateDisplayList(w, h);

            if (_data != null)
            {
               imgContainer.addChild(_data.image);
              tamanho_txt.text = _data.tamanho;
            }
        } */
        }

}

Mas ele ta tendo uns problemas na renderizacao que faz dias q eu to
mexendo e n consigo solucionar... olhei esses links q vc passou na
documentacao tb, mas n consegui resolver

Pra entender deve-se utilizar a aplicacao, vc da play no video e
captura algumas miniaturas, depois arrasta elas do tilelist pro list
abaixo (ambos usam o mesmo itemrenderer) e envia pro servidor.

http://www.rlog.com.br/capture/capture.html  ( o codigo fonte est
disponivel c/ o botao direito )

Bom tudo ta quase tudo funcionando, mas da uns paus e a imagem some se
vc comecar a arrastar o item e soltar sem completar o drag and drop...
quando mexe na barra de rolagem as imagens voltam a aparecer...

Tem esses 2 trechos no meu codigo:

override protected function commitProperties():void
                {
                        super.commitProperties();

                        if (_data != null)
            {
               imgContainer.addChild(_data.image);
               tamanho_txt.text = _data.tamanho;
            }
                }

        /* override protected function updateDisplayList(w:Number,
h:Number):void
        {
            super.updateDisplayList(w, h);

            if (_data != null)
            {
               imgContainer.addChild(_data.image);
              tamanho_txt.text = _data.tamanho;
            }
        } */

se eu usar o primeiro (commitProperties) fica como está, se eu
comentar ele e usar o segundo (updateDisplayList) o problema
desaparece, mas so aparece a imagem depois da segunda captura... n sei
mais o que fazer.

Se puder me dar uma luz agradeco

[ ] 's

Ricardo


    Responder ao autor    Encaminhar  
É necessário Acessar antes de postar mensagens.
Para postar uma mensagem você precisa primeiro participar deste grupo.
Atualize seu apelido na página de configurações da inscrição antes de postar.
Você não tem a permissão necessária para postar.

Criar um grupo - Grupos do Google - Página inicial do Google - Termos de Uso - Política de Privacidade
©2009 Google