Thu, 04 Jun 2015 14:50:33 +0200
Genesis of lecture sources for Droidcon Berlin 2015 in Postbahnhof.
michael@0 | 1 | <!--- |
michael@0 | 2 | Licensed to the Apache Software Foundation (ASF) under one |
michael@0 | 3 | or more contributor license agreements. See the NOTICE file |
michael@0 | 4 | distributed with this work for additional information |
michael@0 | 5 | regarding copyright ownership. The ASF licenses this file |
michael@0 | 6 | to you under the Apache License, Version 2.0 (the |
michael@0 | 7 | "License"); you may not use this file except in compliance |
michael@0 | 8 | with the License. You may obtain a copy of the License at |
michael@0 | 9 | |
michael@0 | 10 | http://www.apache.org/licenses/LICENSE-2.0 |
michael@0 | 11 | |
michael@0 | 12 | Unless required by applicable law or agreed to in writing, |
michael@0 | 13 | software distributed under the License is distributed on an |
michael@0 | 14 | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
michael@0 | 15 | KIND, either express or implied. See the License for the |
michael@0 | 16 | specific language governing permissions and limitations |
michael@0 | 17 | under the License. |
michael@0 | 18 | --> |
michael@0 | 19 | |
michael@0 | 20 | # org.apache.cordova.dialogs |
michael@0 | 21 | |
michael@0 | 22 | Este plugin proporciona acceso a algunos elementos de la interfaz nativa de diálogo. |
michael@0 | 23 | |
michael@0 | 24 | ## Instalación |
michael@0 | 25 | |
michael@0 | 26 | cordova plugin add org.apache.cordova.dialogs |
michael@0 | 27 | |
michael@0 | 28 | |
michael@0 | 29 | ## Métodos |
michael@0 | 30 | |
michael@0 | 31 | * `navigator.notification.alert` |
michael@0 | 32 | * `navigator.notification.confirm` |
michael@0 | 33 | * `navigator.notification.prompt` |
michael@0 | 34 | * `navigator.notification.beep` |
michael@0 | 35 | |
michael@0 | 36 | ## navigator.notification.alert |
michael@0 | 37 | |
michael@0 | 38 | Muestra un cuadro de alerta o diálogo personalizado. La mayoría de las implementaciones de Cordova utilizan un cuadro de diálogo nativa para esta característica, pero algunas plataformas utilizan el navegador `alert` la función, que es típicamente menos personalizable. |
michael@0 | 39 | |
michael@0 | 40 | navigator.notification.alert(message, alertCallback, [title], [buttonName]) |
michael@0 | 41 | |
michael@0 | 42 | |
michael@0 | 43 | * **message**: mensaje de diálogo. *(String)* |
michael@0 | 44 | |
michael@0 | 45 | * **alertCallback**: Callback para invocar al diálogo de alerta es desestimada. *(Función)* |
michael@0 | 46 | |
michael@0 | 47 | * **title**: título de diálogo. *(String)* (Opcional, el valor predeterminado de `Alert`) |
michael@0 | 48 | |
michael@0 | 49 | * **buttonName**: nombre del botón. *(String)* (Opcional, por defecto `Aceptar`) |
michael@0 | 50 | |
michael@0 | 51 | ### Ejemplo |
michael@0 | 52 | |
michael@0 | 53 | function alertDismissed() { |
michael@0 | 54 | // do something |
michael@0 | 55 | } |
michael@0 | 56 | |
michael@0 | 57 | navigator.notification.alert( |
michael@0 | 58 | 'You are the winner!', // message |
michael@0 | 59 | alertDismissed, // callback |
michael@0 | 60 | 'Game Over', // title |
michael@0 | 61 | 'Done' // buttonName |
michael@0 | 62 | ); |
michael@0 | 63 | |
michael@0 | 64 | |
michael@0 | 65 | ### Plataformas soportadas |
michael@0 | 66 | |
michael@0 | 67 | * Amazon fire OS |
michael@0 | 68 | * Android |
michael@0 | 69 | * BlackBerry 10 |
michael@0 | 70 | * Firefox OS |
michael@0 | 71 | * iOS |
michael@0 | 72 | * Tizen |
michael@0 | 73 | * Windows Phone 7 y 8 |
michael@0 | 74 | * Windows 8 |
michael@0 | 75 | |
michael@0 | 76 | ### Windows Phone 7 y 8 rarezas |
michael@0 | 77 | |
michael@0 | 78 | * No hay ninguna alerta del navegador integrado, pero puede enlazar uno proceda a llamar `alert()` en el ámbito global: |
michael@0 | 79 | |
michael@0 | 80 | window.alert = navigator.notification.alert; |
michael@0 | 81 | |
michael@0 | 82 | |
michael@0 | 83 | * `alert` y `confirm` son non-blocking llamadas, cuyos resultados sólo están disponibles de forma asincrónica. |
michael@0 | 84 | |
michael@0 | 85 | ### Firefox OS rarezas: |
michael@0 | 86 | |
michael@0 | 87 | Dos nativos de bloqueo `window.alert()` y no-bloqueo `navigator.notification.alert()` están disponibles. |
michael@0 | 88 | |
michael@0 | 89 | ## navigator.notification.confirm |
michael@0 | 90 | |
michael@0 | 91 | Muestra un cuadro de diálogo de confirmación personalizables. |
michael@0 | 92 | |
michael@0 | 93 | navigator.notification.confirm(message, confirmCallback, [title], [buttonLabels]) |
michael@0 | 94 | |
michael@0 | 95 | |
michael@0 | 96 | * **message**: mensaje de diálogo. *(String)* |
michael@0 | 97 | |
michael@0 | 98 | * **confirmCallback**: Callback para invocar con índice de botón pulsado (1, 2 o 3) o cuando el diálogo es despedido sin la presión del botón (0). *(Función)* |
michael@0 | 99 | |
michael@0 | 100 | * **title**: título de diálogo. *(String)* (Opcional, por defecto a `confirmar`) |
michael@0 | 101 | |
michael@0 | 102 | * **buttonLabels**: matriz de cadenas especificando las etiquetas de botón. *(Matriz)* (Opcional, por defecto [`OK, cancelar`]) |
michael@0 | 103 | |
michael@0 | 104 | ### confirmCallback |
michael@0 | 105 | |
michael@0 | 106 | El `confirmCallback` se ejecuta cuando el usuario presiona uno de los botones en el cuadro de diálogo de confirmación. |
michael@0 | 107 | |
michael@0 | 108 | La devolución de llamada toma el argumento `buttonIndex` *(número)*, que es el índice del botón presionado. Tenga en cuenta que el índice utiliza uno basado en la indexación, así que el valor es `1`, `2`, `3`, etc.. |
michael@0 | 109 | |
michael@0 | 110 | ### Ejemplo |
michael@0 | 111 | |
michael@0 | 112 | function onConfirm(buttonIndex) { |
michael@0 | 113 | alert('You selected button ' + buttonIndex); |
michael@0 | 114 | } |
michael@0 | 115 | |
michael@0 | 116 | navigator.notification.confirm( |
michael@0 | 117 | 'You are the winner!', // message |
michael@0 | 118 | onConfirm, // callback to invoke with index of button pressed |
michael@0 | 119 | 'Game Over', // title |
michael@0 | 120 | ['Restart','Exit'] // buttonLabels |
michael@0 | 121 | ); |
michael@0 | 122 | |
michael@0 | 123 | |
michael@0 | 124 | ### Plataformas soportadas |
michael@0 | 125 | |
michael@0 | 126 | * Amazon fire OS |
michael@0 | 127 | * Android |
michael@0 | 128 | * BlackBerry 10 |
michael@0 | 129 | * Firefox OS |
michael@0 | 130 | * iOS |
michael@0 | 131 | * Tizen |
michael@0 | 132 | * Windows Phone 7 y 8 |
michael@0 | 133 | * Windows 8 |
michael@0 | 134 | |
michael@0 | 135 | ### Windows Phone 7 y 8 rarezas |
michael@0 | 136 | |
michael@0 | 137 | * No hay ninguna función de navegador incorporado para `window.confirm`, pero lo puede enlazar mediante la asignación: |
michael@0 | 138 | |
michael@0 | 139 | window.confirm = navigator.notification.confirm; |
michael@0 | 140 | |
michael@0 | 141 | |
michael@0 | 142 | * Llamadas de `alert` y `confirm` son non-blocking, así que el resultado sólo está disponible de forma asincrónica. |
michael@0 | 143 | |
michael@0 | 144 | ### Firefox OS rarezas: |
michael@0 | 145 | |
michael@0 | 146 | Dos nativos de bloqueo `window.confirm()` y no-bloqueo `navigator.notification.confirm()` están disponibles. |
michael@0 | 147 | |
michael@0 | 148 | ## navigator.notification.prompt |
michael@0 | 149 | |
michael@0 | 150 | Muestra un cuadro de diálogo nativa que es más personalizable que del navegador `prompt` función. |
michael@0 | 151 | |
michael@0 | 152 | navigator.notification.prompt(message, promptCallback, [title], [buttonLabels], [defaultText]) |
michael@0 | 153 | |
michael@0 | 154 | |
michael@0 | 155 | * **message**: mensaje de diálogo. *(String)* |
michael@0 | 156 | |
michael@0 | 157 | * **promptCallback**: Callback para invocar con índice del botón pulsado (1, 2 ó 3) o cuando el cuadro de diálogo es despedido sin la presión del botón (0). *(Función)* |
michael@0 | 158 | |
michael@0 | 159 | * **title**: título *(String)* (opcional, por defecto `puntual` de diálogo) |
michael@0 | 160 | |
michael@0 | 161 | * **buttonLabels**: matriz de cadenas especificando el botón etiquetas *(Array)* (opcional, por defecto `["OK", "Cancelar"]`) |
michael@0 | 162 | |
michael@0 | 163 | * **defaultText**: valor de la entrada predeterminada textbox ( `String` ) (opcional, por defecto: cadena vacía) |
michael@0 | 164 | |
michael@0 | 165 | ### promptCallback |
michael@0 | 166 | |
michael@0 | 167 | El `promptCallback` se ejecuta cuando el usuario presiona uno de los botones en el cuadro de diálogo pronto. El objeto de `resultados` pasado a la devolución de llamada contiene las siguientes propiedades: |
michael@0 | 168 | |
michael@0 | 169 | * **buttonIndex**: el índice del botón presionado. *(Número)* Tenga en cuenta que el índice utiliza uno basado en la indexación, así que el valor es `1`, `2`, `3`, etc.. |
michael@0 | 170 | |
michael@0 | 171 | * **input1**: el texto introducido en el cuadro de diálogo pronto. *(String)* |
michael@0 | 172 | |
michael@0 | 173 | ### Ejemplo |
michael@0 | 174 | |
michael@0 | 175 | function onPrompt(results) { |
michael@0 | 176 | alert("You selected button number " + results.buttonIndex + " and entered " + results.input1); |
michael@0 | 177 | } |
michael@0 | 178 | |
michael@0 | 179 | navigator.notification.prompt( |
michael@0 | 180 | 'Please enter your name', // message |
michael@0 | 181 | onPrompt, // callback to invoke |
michael@0 | 182 | 'Registration', // title |
michael@0 | 183 | ['Ok','Exit'], // buttonLabels |
michael@0 | 184 | 'Jane Doe' // defaultText |
michael@0 | 185 | ); |
michael@0 | 186 | |
michael@0 | 187 | |
michael@0 | 188 | ### Plataformas soportadas |
michael@0 | 189 | |
michael@0 | 190 | * Amazon fire OS |
michael@0 | 191 | * Android |
michael@0 | 192 | * Firefox OS |
michael@0 | 193 | * iOS |
michael@0 | 194 | * Windows Phone 7 y 8 |
michael@0 | 195 | |
michael@0 | 196 | ### Rarezas Android |
michael@0 | 197 | |
michael@0 | 198 | * Android soporta un máximo de tres botones e ignora nada más. |
michael@0 | 199 | |
michael@0 | 200 | * En Android 3.0 y posteriores, los botones se muestran en orden inverso para dispositivos que utilizan el tema de Holo. |
michael@0 | 201 | |
michael@0 | 202 | ### Firefox OS rarezas: |
michael@0 | 203 | |
michael@0 | 204 | Dos nativos de bloqueo `window.prompt()` y no-bloqueo `navigator.notification.prompt()` están disponibles. |
michael@0 | 205 | |
michael@0 | 206 | ## navigator.notification.beep |
michael@0 | 207 | |
michael@0 | 208 | El dispositivo reproduce un sonido sonido. |
michael@0 | 209 | |
michael@0 | 210 | navigator.notification.beep(times); |
michael@0 | 211 | |
michael@0 | 212 | |
michael@0 | 213 | * **times**: el número de veces a repetir la señal. *(Número)* |
michael@0 | 214 | |
michael@0 | 215 | ### Ejemplo |
michael@0 | 216 | |
michael@0 | 217 | / / Pitido dos veces! |
michael@0 | 218 | navigator.notification.beep(2); |
michael@0 | 219 | |
michael@0 | 220 | |
michael@0 | 221 | ### Plataformas soportadas |
michael@0 | 222 | |
michael@0 | 223 | * Amazon fire OS |
michael@0 | 224 | * Android |
michael@0 | 225 | * BlackBerry 10 |
michael@0 | 226 | * iOS |
michael@0 | 227 | * Tizen |
michael@0 | 228 | * Windows Phone 7 y 8 |
michael@0 | 229 | * Windows 8 |
michael@0 | 230 | |
michael@0 | 231 | ### Amazon fuego OS rarezas |
michael@0 | 232 | |
michael@0 | 233 | * Amazon fuego OS reproduce el **Sonido de notificación** especificados en el panel de **configuración/pantalla y sonido** por defecto. |
michael@0 | 234 | |
michael@0 | 235 | ### Rarezas Android |
michael@0 | 236 | |
michael@0 | 237 | * Android juega el **tono de notificación** especificados en el panel **ajustes de sonido y pantalla** por defecto. |
michael@0 | 238 | |
michael@0 | 239 | ### Windows Phone 7 y 8 rarezas |
michael@0 | 240 | |
michael@0 | 241 | * Se basa en un archivo de sonido genérico de la distribución de Cordova. |
michael@0 | 242 | |
michael@0 | 243 | ### Rarezas Tizen |
michael@0 | 244 | |
michael@0 | 245 | * Tizen implementa pitidos por reproducir un archivo de audio a través de los medios de comunicación API. |
michael@0 | 246 | |
michael@0 | 247 | * El archivo de sonido debe ser corto, debe estar ubicado en un `sounds` subdirectorio del directorio raíz de la aplicación y deben ser nombrados`beep.wav`. |