Hi,

On August 27, I wrote version one of my question: " Components of the forms 
disappear". Today I checked the code and found nothing, I proceeded to 
change it to minimize its size but I still have the same problems. The 
truth is that it happens in at least 3 forms of my application and added to 
this I find that a form with the dialog component grows or changes its form 
without changes in programming. I must clarify that my application handles 
many records and I smell that it is due to a problem with memory.

I show you the ways mentioned and the code changed.

   private void formaTienda(final Form fmLiber) {
        final Form fmTienda = new Form(new BorderLayout());
        fmTienda.getToolbar().setBackCommand("", e -> fmLiber.showBack());
        fmTienda.getToolbar().getStyle().setAlignment(Label.LEFT);
        fmTienda.setTitle(idioma.getTiendas());

        TextField txNombreTienda = new TextField();
        txNombreTienda.setHint(idioma.getTienda());

        Container cnTiendas = new Container(BoxLayout.y());
        cnTiendas.setScrollableY(true);

        txNombreTienda.addDataChangeListener((int type, int index) -> {
            String t = txNombreTienda.getText();
            if (t.length() == 0) {
                return;
            }
            char[] p = t.toCharArray();
            if (p.length == 0) {
                return;
            } else {
                if (p[p.length - 1] != ' ') {
                    return;
                }
            }
            ArrayList l = new ArrayList();
            l = dT.leeArrayListDatos(t, TIENDA_LEE_NOMBRE);

            if (l == null || l.isEmpty()) {
                return;
            }
            if (l.size() < LIMITE_DATOS) {
                cnTiendas.removeAll();
                for (int i = 0; i < l.size(); i++) {
                    Tienda tDa = registroTienda((Map<String, String>) 
l.get(i));
                    Container cnItemTienda = creaItemTienda(fmTienda, tDa);
                    cnTiendas.add(cnItemTienda);
                }
            } else {
                Dialog.show(idioma.getInformacion(), idioma.getMensaje21(), 
idioma.getContinuar(), null);
            }
            cnTiendas.animateLayout(250);
        });

        Style s = UIManager.getInstance().getComponentStyle("Title");
        FontImage iInformacion = 
FontImage.createMaterial(FontImage.MATERIAL_INFO, s);
        fmTienda.getToolbar().addCommandToRightBar(new Command("", 
iInformacion) {
            @Override
            public void actionPerformed(ActionEvent evt) {
                formaInformacion(fmTienda, idioma.getTiendas(), 
idioma.getMensaje68() + idioma.getMensaje32());
            }
        });

        FloatingActionButton btNuevo = 
FloatingActionButton.createFAB(FontImage.MATERIAL_ADD);
        btNuevo.bindFabToContainer(fmTienda.getContentPane(), 
Component.RIGHT, Component.BOTTOM);
        btNuevo.addActionListener((e) -> {
            Tienda tDa = new Tienda();
            mantenimientoTienda(fmTienda, tDa, ADICIONAR);
        });

        fmTienda.add(BorderLayout.NORTH, txNombreTienda);
        fmTienda.add(BorderLayout.CENTER, cnTiendas);
        fmTienda.setTransitionOutAnimator(CommonTransitions.createSlide(
                CommonTransitions.SLIDE_VERTICAL, true, 500));
        fmTienda.show();
    }

-- 
You received this message because you are subscribed to the Google Groups 
"CodenameOne Discussions" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to codenameone-discussions+unsubscr...@googlegroups.com.
Visit this group at https://groups.google.com/group/codenameone-discussions.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/codenameone-discussions/f4bbd331-81dc-4307-9ea4-844d41c587fd%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to