Problema para atualizar a List

Olá pessoal, meu problema é o seguinte:

  • Eu crio uma List através de um Vector, ou seja, eu faço a leitura de dados no RMS e jógo para um vector, logo eu recupero os valores desse vector e insiro na List, o problema é: quando eu crio a List uma vez, e insiro dados no RMS, não atualiza na List!!!. Só consigo atualizar essa List quando eu reinicio o meu midlet :frowning:

alguém sabe como eu posso resolver esse problemas?

abraço!

depois de atualizar a lista já tentou dar um novo comando setDisplay?

Olá Bruno, meu problema é justamente, como vou atualizar a lista :???:

Eu ainda não entedi o problema, é pra atualizar a lista conforme vc poe items no RMS ou é como atualizar a lista tendo um novo Vector?

kamyu, é os dois na verdade, pq sempre q eu salvo algo no rms e gravo os dados e num vector, eu não consigo mais ver essa List atualizada :frowning:

Resumindo eu só consigo vê a Lista atualizada apenas uma vez, a seguda quando eu insiro algo no rms e acesso a List, não está atualizada :frowning:

sabe como posso resolver isso?

Como vc está atualizando a lista e normalmente faria um list.deleteAll(); e em seguida faria list.insert dos itens do vetor, isso normalmente funciona, vc está fazendo assim? Poste o código que vc usa para atualizar a lista(já que a lista não se atualiza sozinha).

segue o código abaixo kamyu:

Principal.java eu chamo esse método que cria a minha List

public List get_listar() {
        if (listar == null) {                       
            // Insert pre-init code here
            listar = new List("Despesas", Choice.MULTIPLE, new String[0], new Image[0]);                        
            listar.addCommand(get_bt_voltarPrincipal());
            listar.setCommandListener(this);
            listar.setSelectedFlags(new boolean[0]);
            listar.setSelectCommand(get_bt_voltarPrincipal());                      
            banco = new Banco();
            banco.conectaBanco();            
            if(banco.leDado().isEmpty()!=true){
                listar.deleteAll();
                for(int x=0;x<banco.leDado().size();x++){
                    String palavra = (String) banco.leDado().elementAt(x);
                    listar.insert(0,palavra.substring(palavra.indexOf(",")+1,palavra.indexOf("|"))+" : R$ "+palavra.substring(palavra.indexOf("|")+1,palavra.length()), null);
                }            
            }else{
                listar.insert(0,"Não há despesas",null);
            }
        }                       
        return listar;
    }

Banco.java // classe onde contém meu método ledado(); q retorna um vetor.

public Vector leDado(){
       Vector lista = new Vector();
       try{
       byte[] recData = new byte[50];
       int len;     
       for (int i = 1; i <= rs.getNumRecords(); i++){
           len = rs.getRecord( i, recData, 0 );           
           lista.addElement(new String(recData, 0, len));                    
       }
       
       }catch (Exception e){
       db(e.toString());
       }
       return lista;
}