Bonjour,
Je suis en train de développer une application Android. Pour mon application, j'ai un menu de préférences construit à l'aide d'un fichier XML, voir ci contre :
J'ai crée des dépendances entre deux éléments distincts et cela marche bien. Par contre, dans mon deuxieme "PreferenceScreen", j'ai la liste des villes. Dans cette liste, j'aimerais que lorsque je coche une checkbox, les autres soit automatiquement grisées et impossible de les sélectionner. Dans l'autre cas, quand je décoche la checkbox, tout devienne cochable. Je pensais faire cela à l'aide d'un script java, ou j'ai une boucle qui vérifie l'état des checkbox et qui fasse en conséquence une action. Je ne sais pas du tout comment faire.
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
80
81
82
83
84
85
86
87
88 <?xml version="1.0" encoding="utf-8"?> <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" android:title="Settings"> <ListPreference android:key="cabs_number" android:title="Number of cabs" android:summary="Please select the number of cabs to display on the map" android:dialogTitle="Select your cabs number :" android:entries="@array/cabs_number_list" android:entryValues="@array/cabs_number_list_value" android:negativeButtonText="Cancel"/> <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" android:title="City" android:key="city" android:summary="Please select your city"> <CheckBoxPreference android:title="Chicago" android:key="Chicago"> </CheckBoxPreference> <CheckBoxPreference android:key="NewYork" android:title="NewYork"> </CheckBoxPreference> <CheckBoxPreference android:key="Houston" android:title="Houston"> </CheckBoxPreference> </PreferenceScreen> <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" android:title="Company" android:key="company" android:summary="Please select your(s) company(ies)"> <CheckBoxPreference android:key="YellowCab" android:title="YellowCab" android:dependency="Chicago"> </CheckBoxPreference> <CheckBoxPreference android:key="CaribootTaxi" android:title="CaribootTaxi" android:dependency="Houston"> </CheckBoxPreference> <CheckBoxPreference android:key="ManhattanTaxi" android:title="ManhattanTaxi" android:dependency="NewYork"> </CheckBoxPreference> <CheckBoxPreference android:key="NYCTaxi" android:title="NYCTaxi" android:dependency="NewYork"> </CheckBoxPreference> </PreferenceScreen> <PreferenceScreen android:title="Type of cabs" android:summary="Please select your(s) cabs type" android:key="cabs_type"> <CheckBoxPreference android:title="Limo" android:key="cabs_type1" /> <CheckBoxPreference android:title="Car service" android:key="cabs_type2" /> </PreferenceScreen> <ListPreference android:summary="Please select your number of seats" android:title="Passengers" android:key="passengers_number" android:negativeButtonText="Cancel" android:positiveButtonText="OK " android:dialogTitle="Select your seats number :" android:entryValues="@array/passengers_number_list_value" android:entries="@array/passengers_number_list"/> </PreferenceScreen>
Merci d'avance
Partager