Bonjour,
Débutant en java sur android studio :
Quand je lance mon application, j'ai un textview et un spinner. je voudrais, même en sélectionnant celui par défaut (là du blanc), pouvoir afficher sur le textview un message (puis passer a autre chose).
1/ Le problème est que cela ne marche que si je modifie mon choix dans le spinner. Comment puis-je faire ?
2/ Comment personnaliser mon spinner en le faisant apparaitre comme un bouton (en gardant la petite flèche a droite)
Voilà mon code exemple :
MainActivity.java :
activity_main.xml :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79 package morinxav.testspinner; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.Gravity; import android.view.View; import android.view.inputmethod.InputMethodManager; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.CheckBox; import android.widget.EditText; import android.widget.ScrollView; import android.widget.Spinner; import android.widget.TextView; import android.widget.Toast; import android.content.Intent; import android.view.KeyEvent; import android.view.View.OnKeyListener; public class MainActivity extends AppCompatActivity { TextView txtTest; Spinner SpinnerTest; ArrayAdapter<CharSequence> adapter; boolean FirstStep1 = true; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); txtTest = (TextView) findViewById(R.id.textViewTest); SpinnerTest = (Spinner) findViewById(R.id.spinnerTest); adapter = ArrayAdapter.createFromResource(this,R.array.Test,android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); SpinnerTest.setAdapter(adapter); SpinnerTest.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { //Choix étage @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { if (FirstStep1) { FirstStep1 = false; return; } String varTest = SpinnerTest.getSelectedItem().toString(); switch (varTest){ case "": txtTest.setText("sans intérét"); break; case "1": txtTest.setText("un etc"); break; case "2": txtTest.setText("deux etc"); break; case "3": txtTest.setText("trois etc"); break; case "NC": txtTest.setText("non comuniqué"); break; } SpinnerTest.setVisibility(View.GONE); } @Override public void onNothingSelected(AdapterView<?> parent) { } }); } }
strings.xml :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 <?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:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="morinxav.testspinner.MainActivity"> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:id="@+id/textViewTest" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/reslblTest" android:textSize="15sp" android:gravity="center" android:layout_margin="10dp" /> <Spinner android:id="@+id/spinnerTest" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:layout_margin="10dp" /> </LinearLayout> </LinearLayout>
Cordialement
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 <resources> <string name="app_name">TestSpinner</string> <string name="reslblTest">Test: </string> <string-array name="Test"> <item></item> <item>1</item> <item>2</item> <item>3</item> <item>NC</item> </string-array> </resources>
Partager