Partage
  • Partager sur Facebook
  • Partager sur Twitter

Ajouter des views dynamiquement

Android Studio

    7 juin 2020 à 15:57:21

    Bonjour à tous ! 

    Je développe ma première application Android et j'ai un problème que je peine à résoudre.

    J'ai besoin d'ajouter un nombre de views indéterminé (dans un LinearLayout), qui dépendra de l'utilisateur. La vue est composée d'une icône, d'un titre, d'un sous-titre et d'une indication de temps. 

    Voici mon code Java qui appelle mon constructeur de view : 

    public class CustomTaskMain extends View {

    private LinearLayout layout;
    private int icon;
    private ImageView iconView;
    private TextView taskView, projectView, timeView;

    public CustomTaskMain (Activity activity){
    super(activity);
    activity.setContentView(R.layout.task_information_main_page);

    this.layout = findViewById(R.id.task_information_main);
    this.taskView = (TextView) findViewById(R.id.task_name_main);
    this.projectView = (TextView) findViewById(R.id.project_name_main);
    this.timeView = (TextView) findViewById(R.id.task_time_main);
    }

    public void build (String task, String project, String time, LinearLayout view){
    taskView.setText(task);
    projectView.setText(project);
    timeView.setText(time);
    view.addView(layout);

    J'ai un message d'erreur lors du lancement de l'application qui me dit que je met une valeur null dans le taskView.setText(task);

    Si quelqu'un sait comment créer une view et la rajouter à l'activité tout en modifiant ses paramètres (les textes et l'image), j'attends sa réponse avec impatience !

    Merci d'avance à ceux qui liront et répondront à mon problème.

    • Partager sur Facebook
    • Partager sur Twitter
      8 juin 2020 à 10:39:27

      Hello, pourquoi ne pas faire un recyclerView au lieu de créer et d'ajouter dynamiquement tes vues ?
      • Partager sur Facebook
      • Partager sur Twitter
        15 juin 2020 à 21:19:36

        Bonjour Stephom, 

        En fait, j'aimerai créer un "modèle" d'une vue, par exemple un ensemble image, textes et ajouter cette vue plusieurs fois dans un linear layout en modifiant l'images et les textes sans modifier la mise en page. Tu penses que c'est possible ? J'ai pas mal cherché mais je ne trouve pas de solution satisfaisante.

        Merci pour ta réponse.

        • Partager sur Facebook
        • Partager sur Twitter
          15 juin 2020 à 23:47:05

          Genre une liste ?

          Edit : J’avais pas lu la première réponse. Je rectifie du coup :

          Genre un recyclerView ?

          -
          Edité par Geda 15 juin 2020 à 23:48:18

          • Partager sur Facebook
          • Partager sur Twitter
            18 juin 2020 à 10:57:11

            Merci à vous, je vais regarder les recyclerViews

            • Partager sur Facebook
            • Partager sur Twitter

            Ajouter des views dynamiquement

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown