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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
|
<!---
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
# cordova-plugin-dialogs
Questo plugin consente di accedere ad alcuni elementi di interfaccia utente nativa dialogo tramite un oggetto globale `navigator.notification`.
Anche se l'oggetto è associato con ambito globale del `navigator`, non è disponibile fino a dopo l'evento `deviceready`.
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
console.log(navigator.notification);
}
## Installazione
cordova plugin add cordova-plugin-dialogs
## Metodi
* `navigator.notification.alert`
* `navigator.notification.confirm`
* `navigator.notification.prompt`
* `navigator.notification.beep`
## navigator.notification.alert
Mostra una finestra di avviso o la finestra di dialogo personalizzata. La maggior parte delle implementazioni di Cordova utilizzano una finestra di dialogo nativa per questa caratteristica, ma alcune piattaforme utilizzano la funzione di `alert` del browser, che è in genere meno personalizzabile.
navigator.notification.alert(message, alertCallback, [title], [buttonName])
* **message**: messaggio finestra di dialogo. *(String)*
* **alertCallback**: Callback da richiamare quando viene chiusa la finestra di avviso. *(Funzione)*
* **title**: titolo di dialogo. *(String)* (Opzionale, default è `Alert`)
* **buttonName**: nome del pulsante. *(String)* (Opzionale, default è `OK`)
### Esempio
function alertDismissed() {
// do something
}
navigator.notification.alert(
'You are the winner!', // message
alertDismissed, // callback
'Game Over', // title
'Done' // buttonName
);
### Piattaforme supportate
* Amazon fuoco OS
* Android
* BlackBerry 10
* Firefox OS
* iOS
* Tizen
* Windows Phone 7 e 8
* Windows 8
* Windows
### Windows Phone 7 e 8 stranezze
* Non non c'è nessun avviso del browser integrato, ma è possibile associare uno come segue per chiamare `alert()` in ambito globale:
window.alert = navigator.notification.alert;
* Entrambi `alert` e `confirm` sono non di blocco chiamate, risultati di cui sono disponibili solo in modo asincrono.
### Firefox OS Stranezze:
Nativo di blocco `window.alert()` blocco `navigator.notification.alert()` sono disponibili sia.
### BlackBerry 10 capricci
parametro di callback `navigator.notification.alert ('text' callback, 'title' 'text')` viene passato il numero 1.
## navigator.notification.confirm
Visualizza una finestra di dialogo conferma personalizzabile.
navigator.notification.confirm(message, confirmCallback, [title], [buttonLabels])
* **messaggio**: messaggio finestra di dialogo. *(String)*
* **confirmCallback**: Callback da richiamare con l'indice del pulsante premuto (1, 2 o 3) o quando la finestra di dialogo viene chiusa senza una pressione del pulsante (0). *(Funzione)*
* **titolo**: titolo di dialogo. *(String)* (Opzionale, default è`Confirm`)
* **buttonLabels**: matrice di stringhe che specificano le etichette dei pulsanti. *(Matrice)* (Opzionale, default è [ `OK,Cancel` ])
### confirmCallback
Il `confirmCallback` viene eseguito quando l'utente preme uno dei pulsanti nella finestra di dialogo conferma.
Il callback accetta l'argomento `buttonIndex` *(numero)*, che è l'indice del pulsante premuto. Si noti che l'indice utilizza l'indicizzazione base uno, quindi il valore è `1`, `2`, `3`, ecc.
### Esempio
function onConfirm(buttonIndex) {
alert('You selected button ' + buttonIndex);
}
navigator.notification.confirm(
'You are the winner!', // message
onConfirm, // callback to invoke with index of button pressed
'Game Over', // title
['Restart','Exit'] // buttonLabels
);
### Piattaforme supportate
* Amazon fuoco OS
* Android
* BlackBerry 10
* Firefox OS
* iOS
* Tizen
* Windows Phone 7 e 8
* Windows 8
* Windows
### Windows Phone 7 e 8 stranezze
* Non non c'è nessuna funzione browser incorporato per `window.confirm` , ma è possibile associare assegnando:
window.confirm = navigator.notification.confirm;
* Chiama al `alert` e `confirm` sono non bloccante, quindi il risultato è disponibile solo in modo asincrono.
### Stranezze di Windows
* Su Windows8/8.1 non è possibile aggiungere più di tre pulsanti a MessageDialog istanza.
* Su Windows Phone 8.1 non è possibile mostrare la finestra di dialogo con più di due pulsanti.
### Firefox OS Stranezze:
Nativo di blocco `window.confirm()` blocco `navigator.notification.confirm()` sono disponibili sia.
## navigator.notification.prompt
Visualizza una finestra di dialogo nativa che è più personalizzabile di funzione `prompt` del browser.
navigator.notification.prompt(message, promptCallback, [title], [buttonLabels], [defaultText])
* **message**: messaggio finestra di dialogo. *(String)*
* **promptCallback**: Callback da richiamare con l'indice del pulsante premuto (1, 2 o 3) o quando la finestra di dialogo viene chiusa senza una pressione del pulsante (0). *(Funzione)*
* **title**: dialogo titolo *(String)* (opzionale, default è `Prompt`)
* **buttonLabels**: matrice di stringhe specificando il pulsante etichette *(Array)* (opzionale, default è `["OK", "Cancel"]`)
* **defaultText**: valore (`String`) di input predefinito textbox (opzionale, Default: empty string)
### promptCallback
Il `promptCallback` viene eseguito quando l'utente preme uno dei pulsanti nella finestra di dialogo richiesta. `results` oggetto passato al metodo di callback contiene le seguenti proprietà:
* **buttonIndex**: l'indice del pulsante premuto. *(Numero)* Si noti che l'indice utilizza l'indicizzazione base uno, quindi il valore è `1`, `2`, `3`, ecc.
* **input1**: il testo immesso nella finestra di dialogo richiesta. *(String)*
### Esempio
function onPrompt(results) {
alert("You selected button number " + results.buttonIndex + " and entered " + results.input1);
}
navigator.notification.prompt(
'Please enter your name', // message
onPrompt, // callback to invoke
'Registration', // title
['Ok','Exit'], // buttonLabels
'Jane Doe' // defaultText
);
### Piattaforme supportate
* Amazon fuoco OS
* Android
* Firefox OS
* iOS
* Windows Phone 7 e 8
* Windows 8
* Windows
### Stranezze Android
* Android supporta un massimo di tre pulsanti e ignora di più di quello.
* Su Android 3.0 e versioni successive, i pulsanti vengono visualizzati in ordine inverso per dispositivi che utilizzano il tema Holo.
### Stranezze di Windows
* Su Windows finestra di dialogo richiesta è a causa di mancanza di tali api nativa basata su html.
### Firefox OS Stranezze:
Nativo di blocco `window.prompt()` blocco `navigator.notification.prompt()` sono disponibili sia.
## navigator.notification.beep
Il dispositivo riproduce un bip sonoro.
navigator.notification.beep(times);
* **times**: il numero di volte per ripetere il segnale acustico. *(Numero)*
### Esempio
// Beep twice!
navigator.notification.beep(2);
### Piattaforme supportate
* Amazon fuoco OS
* Android
* BlackBerry 10
* iOS
* Tizen
* Windows Phone 7 e 8
* Windows 8
### Amazon fuoco OS stranezze
* Amazon fuoco OS riproduce il **Suono di notifica** specificato sotto il pannello **Impostazioni/Display e il suono** predefinito.
### Stranezze Android
* Android giochi default **Notification ringtone** specificato sotto il pannello **impostazioni/audio e Display**.
### Windows Phone 7 e 8 stranezze
* Si basa su un file generico bip dalla distribuzione di Cordova.
### Tizen stranezze
* Tizen implementa bip di riproduzione di un file audio tramite i media API.
* Il file beep deve essere breve, deve trovarsi in una sottodirectory di `sounds` della directory principale dell'applicazione e deve essere denominato `beep.wav`.
|