Partage
  • Partager sur Facebook
  • Partager sur Twitter

AddView pour générer un TextView automatiquement ?

Android Studio 3.5

    1 octobre 2019 à 22:13:44

    Bonsoir a tous,

    Vous l'aurez deviné, si je là, c'est que j'ai un problème, de taille.

    Je cherche a générer automatiquement un TextView dans mon layout lorsque j'appuie sur un bouton.
    Un peu comme ferai une caisse enregistreuse qui vous sort un ticket. Si on appuie une fois, un TextView s'affiche, si on appuie une seconde fois, un deuxième TextView etc.

    @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_caja);
    
    
    Button caja_btn_categories_tartas = findViewById(R.id.caja_btn_categories_tartas);
    
    // BOUTON TARTAS
            Button caja_btn_tartas_limon = findViewById(R.id.caja_btn_tartas_limon);
    
            //ONCLICK BOUTON TARTAS
            caja_btn_tartas_limon.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    LinearLayout caja_layout_ticket = findViewById(R.id.caja_layout_ticket);
                    TextView tv_btn_tartas_limon =new TextView(caja.this);
                    tv_btn_tartas_limon.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT));
                    tv_btn_tartas_limon.setText("Tarta de limon");
                    caja_layout_ticket.addView(tv_btn_tartas_limon);
    
                }
            });



    Après quelques recherches sur le net, j'en suis venu a écrire ce code ci joint, seulement, ca ne fonctionne pas. Et je ne trouve pas pourquoi, cela me semble pourtant correct.

    De plus, si jamais quelqu'un pourrait me guider sur la solution, serait-il capable de dire s'il est possible, et comment, supprimer ce même TextView en cliquant dessus.

    Merci d'avance pour ceux qui prendrons la peine, de lire seulement toutes ces lignes :D

    • Partager sur Facebook
    • Partager sur Twitter
      17 octobre 2019 à 17:00:03

      Je poste la réponse, qui m'a été donné sur un autre forum, après test, tout fonctionne comme voulu

      private ArrayList produits = new ArrayList<String>{"Produit1", "Produit2"}
      mListView = (ListView) findViewById(R.id.listView);
      final ArrayAdapter<String> adapter = new ArrayAdapter<String>(context, android.R.layout.simple_list_item_1, produits);
      mListView.setAdapter(adapter);
      Sur le btn concerné : 
      produits.add("Autre produit")
      adapter.notifyDataSetChanged();
      • Partager sur Facebook
      • Partager sur Twitter

      AddView pour générer un TextView automatiquement ?

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      • Editeur
      • Markdown