Problème de conception

didierduro Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
 didierduro -
Bonjour,
je doit faire une application pour mon club afin de gérer les consommations de boissons sur une tablette. Je débute sur android.
Il faudrait indiquer la date (si possible afficher un calendrier en cliquant dessus)
cliquer sur le nom de la personne
cliquer sur un champ quantité consommée
et un champ quantité payée
avoir un bouton qui lorsque l'on clique dessus, les résultats s'enregistre dans un fichier
Voici le code que j'ai déjà réaliser :

activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context="com.conso.MainActivity"
    android:weightSum="1">

    <TextView

        android:id="@+id/textView"
        android:layout_width="match_parent"
        android:layout_height="32dp"
        android:gravity="center"
        android:text="Date : "
        android:textColor="#FF0000"
        android:textStyle="bold"
        tools:ignore="HardcodedText,MissingConstraints,NestedWeights"
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="0dp" />

    <EditText

        android:id="@+id/date"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="date"
        android:inputType="datetime"
        tools:ignore="HardcodedText,MissingConstraints"
        tools:layout_editor_absoluteX="67dp"
        tools:layout_editor_absoluteY="-5dp" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:orientation="horizontal"
        android:weightSum="1"
        tools:ignore="InefficientWeight,MissingConstraints"
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="24dp">
    <TextView

        android:layout_width="252dp"
        android:layout_height="32dp"
        android:gravity="center"
        android:text="Joueur : "
        android:textColor="#FF0000"
        android:textStyle="bold"
        tools:ignore="HardcodedText,MissingConstraints,NestedWeights"
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="0dp" />

    <Spinner
        android:id="@+id/joueur"
        android:layout_width="fill_parent"
        android:layout_height="39dp"
        android:hint="@string/joueur" />
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:orientation="horizontal"
        android:weightSum="1"
        tools:ignore="InefficientWeight,MissingConstraints"
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="24dp">
    <TextView

        android:layout_width="252dp"
        android:layout_height="32dp"
        android:gravity="center"
        android:text="Quantité dûe: "
        android:textColor="#FF0000"
        android:textStyle="bold"
        tools:ignore="HardcodedText,MissingConstraints,NestedWeights"
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="0dp" />

    <Spinner
        android:id="@+id/qtedue"
        android:layout_width="match_parent"
        android:layout_height="39dp"
        android:hint="@string/qtedue"/>
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:orientation="horizontal"
        android:weightSum="1"
        tools:ignore="InefficientWeight,MissingConstraints"
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="24dp">
    <TextView

        android:layout_width="252dp"
        android:layout_height="32dp"
        android:gravity="center"
        android:text="Quantité payée : "
        android:textColor="#FF0000"
        android:textStyle="bold"
        tools:ignore="HardcodedText,MissingConstraints,NestedWeights"
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="0dp" />

    <Spinner
        android:id="@+id/qtepayee"
        android:layout_width="match_parent"
        android:layout_height="39dp"
        android:hint="@string/qtepayee" />
    </LinearLayout>
    <!--<Button
        android:id="@+id/Valider"
        android:layout_width="fill_parent"
        android:layout_height="36dp"
        android:text="@string/valider" />

    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="0.81">-->

    <TextView
        android:id="@+id/information"
        android:layout_width="105dp"
        android:layout_height="31dp"
        android:layout_gravity="center"
        android:layout_marginTop="12dp"
        android:text="@string/en_attente" />
    <!--</RelativeLayout>-->


</LinearLayout>

MainActivity.java
package com.conso;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.Spinner;
import android.widget.TextView;

import static android.R.layout.simple_spinner_item;

public class MainActivity extends AppCompatActivity {

    private Button active;
    private Spinner list = null;
    private Spinner list1 = null;
    private Spinner list2;
    private TextView text;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        final Spinner list = (Spinner) findViewById(R.id.joueur);
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, simple_spinner_item, JR);

        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

        list.setAdapter(adapter);
        list.setSelection(0);

        final Spinner list1 = (Spinner) findViewById(R.id.qtedue);
        ArrayAdapter<String> adapter1;
        adapter1 = new ArrayAdapter<String>(this, simple_spinner_item, DD);

        adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

        list1.setAdapter(adapter1);

        /*final Spinner list2 = (Spinner) findViewById(R.id.qtepayee);
        ArrayAdapter<String> adapter2;
        adapter2 = new ArrayAdapter<String>(this, simple_spinner_item, DP);

        adapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

        list.setAdapter(adapter2);*/


        /*final Button active = (Button) findViewById(R.id.valider);
        active.setOnClickListener(new Button.OnClickListener() {
            public void onClick(View v) {
                Option();
            }
        });*/

    }

    static final String[] JR = new String[]{"alphonse","didier","rené"
    };

    static final String[] DD = new String[]{"1","2","3","4","5"
    };

    /*static final String[] DP = new String[]{"1","2","3","4","5"
    };*/

    /*private void Option() {
        Button active = (Button) findViewById(R.id.valider);
        if (active != null) {
            Spinner list = (Spinner) findViewById(R.id.joueur);
            TextView text = (TextView) findViewById(R.id.information);
            if ((list != null) || list.isEnabled()) {
                list.setEnabled(true);
                active.setText("Valider");
                text.setText("En attente");
            } else {
                switch (list.getSelectedItemPosition()) {
                    case 0:
                        text.setText("Android");
                        break;
                    case 1:
                        text.setText("BlackBerry");
                        break;
                    case 2:
                        text.setText("Firefox");
                        break;
                    case 3:
                        text.setText("iOS");
                        break;
                    case 4:
                        text.setText("Ubuntu");
                        break;
                    case 5:
                        text.setText("Windows");
                        break;
                }
                list.setEnabled(false);
                active.setText(R.string.OK);


            }
        }

    }*/
}

Mes problèmes sont les suivants:
si j'active les 3 listes, lorsque je lance l'émulateur, la deuxième liste s'affiche dans la première et la 3ème dans la deuxième et il n'y a rien dans la 3ème.
si j'active le bouton, l'application plante

Quelqu'un pourrait-il m'aider svp?

2 réponses

BunoCS Messages postés 15952 Date d'inscription   Statut Modérateur Dernière intervention   3 918
 
Hello,

Je n'ai pas tout regarder mais tu as des redéfinitions de variables:
list
et
list1
.
Ensuite, dans le code commenté, tu branche l'
adapter2
sur
list
.

0
didierduro
 
Bonjour,
merci pour ces informations. Je vais continuer mes recherches.
0