|
||
|
|
|
|||||||
| Tasker Para hablar de todo lo relacionado con la aplicación tasker |
![]() |
|
|
Herramientas |
|
#21
|
||||
|
||||
|
__________________
Miembro del equipo que promueve el [Subforo de Tasker]
Si das pescado a un hombre hambriento le nutres una jornada. Si le enseñas a pescar le nutrirás toda la vida. (Lao-Tsé - Filósofo chino) |
|
|
|
#22
|
||||
|
||||
|
Tal y como comentaste, con una fuente monospace y con el código que indicaste, se ajusta perfectamente a la escena. Y también tenías razón en lo de como utilizar la fuente, no hay que instalar nada, únicamente tener el archivo e indicar la ruta en el apartado de fuente del elemento de la escena. De nuevo gracias, y aquí dejo una captura del resultado. Un saludo
Última edición por Rsc Día 01/02/17 a las 18:30:17. |
|
#23
|
||||
|
||||
|
Problema con UPDATE cuando la variable contiene apóstrofos
Hola,
Pues el tema es el del enunciado: cuando tengo una variable con texto con apóstrofos (uso datos en catalán y aparecen a menudo...) al editar los campos de un registro de la DB con UPDATE se detiene la acción. Por ejemplo: quiero actualizar el campo COMENTARIS de una tabla, y establezco %comentaris = Planta de l'Amèrica del Sud. Acción SQLquery: UPDATE nombre_de_la_tabla SET COMENTARIS = '%comentaris' Al encontrar el apóstrofo, el literal de la variable queda en Planta de l y lo que queda de la frase no puede ser interpretado por SQL abortando la acción. Tuve un problema parecido cuando importaba tablas de Excel pero se resolvió codificando el texto en UTF-8. Ahora este texto ya está en este formato y no encuentro la solución: ninguna ficha que contenga apóstrofes puede ser editada... Alguien sabe cual sería la solución manteniendo el formato de texto con apóstrofes?. Gracias de antemano por el desgaste neuronal...
__________________
Me apasiona volar, pero con los pies en el suelo...
|
|
#24
|
||||
|
||||
|
Hola,
Pues el tema es el del enunciado: cuando tengo una variable con texto con apóstrofos (uso datos en catalán y aparecen a menudo...) al editar los campos de un registro de la DB con UPDATE se detiene la acción. Por ejemplo: quiero actualizar el campo COMENTARIS de una tabla, y establezco %comentaris = Planta de l'Amèrica del Sud. Acción SQLquery: UPDATE nombre_de_la_tabla SET COMENTARIS = '%comentaris' Al encontrar el apóstrofo, el literal de la variable queda en Planta de l y lo que queda de la frase no puede ser interpretado por SQL abortando la acción. Tuve un problema parecido cuando importaba tablas de Excel pero se resolvió codificando el texto en UTF-8. Ahora este texto ya está en este formato y no encuentro la solución: ninguna ficha que contenga apóstrofes puede ser editada... Alguien sabe cual sería la solución manteniendo el formato de texto con apóstrofes?. Gracias de antemano por el desgaste neuronal... ![]()
__________________
Tutorial sobre el mundo de las roms GNexus
Las OTA's llevan a la ira, la ira lleva al flaseo, el flaseo lleva al lado oscuro de Android. |
| Los siguientes 3 usuarios han agradecido a fus su comentario: | ||
|
#25
|
||||
|
||||
|
Gracias @fus, tema resuelto!
Antes de la acción SQLquery pongo un Buscar y Reemplazar sobre la variable %comentaris, buscando ' (apóstrofe) y reemplazando con '' (dos apóstrofes seguidos) y funciona… Enviat des del meu Nexus 5 usant Tapatalk
__________________
Me apasiona volar, pero con los pies en el suelo...
|
|
#26
|
||||
|
||||
|
Buenas @danko9696, te cito a ti directamente porque viendo los aportes que has hecho a este hilo, creo que eres el que puede resolver mi duda.
Estoy intentando insertar imágenes en mis tablas de sqlite, pero no lo consigo. He leído que tiene que ser insertada en un campo tipo "blob", pero me resulta imposible extrapolar el código que veo en los foros de sqlite a Tasker. Ahí te dejo la consulta, por si sabes cómo es, y tienes un hueco para explicármelo. Un saludo. |
|
#27
|
||||
|
||||
|
Buenas @danko9696, te cito a ti directamente porque viendo los aportes que has hecho a este hilo, creo que eres el que puede resolver mi duda.
Estoy intentando insertar imágenes en mis tablas de sqlite, pero no lo consigo. He leído que tiene que ser insertada en un campo tipo "blob", pero me resulta imposible extrapolar el código que veo en los foros de sqlite a Tasker. Ahí te dejo la consulta, por si sabes cómo es, y tienes un hueco para explicármelo. Un saludo. ![]() No sé para lo que lo vas a usar pero si se trata de imágenes relativamente grandes yo consideraría mantenerlas fuera de la base de datos. Desde luego yo no lo usaría para guardar las fotos de vacaciones, por ejemplo, pero puede que sí para pequeñas fotos asociadas a artículos, si el rendimiento no es un factor muy importante. |
| Los siguientes 2 usuarios han agradecido a danko9696 su comentario: | ||
|
#28
|
||||
|
||||
|
El uso que le quiero dar es meramente estético. Como ya comenté hice una aplicación para llevar el control de los goles y las tarjetas en una liga de fútbol de un juego de la Play que juego con unos amigos.
La escena principal tiene entre otros elementos, un elemento menú que muestra el contenido de una tabla sqlite, que gracias a este hilo he sabido construir y la tengo completamente alineada utilizando una fuente monospace. La tabla actualmente tiene tres campos y está compuesta así: GOLES PLAYER USUARIO Lo que quiero es añadir otro campo, que contenga una imagen png con la cara de los jugadores. Las imágenes que me he descargado hasta el momento ocupan muy poco espacio. Como comprenderás por lo que he explicado, descarto incluir las imágenes fuera de la base de datos, porque quedarían fuera del elemento menú. Muchas gracias de nuevo por las aclaraciones, un saludo. |
| Gracias de parte de: | ||
|
#29
|
||||
|
||||
|
No entiendo eso de descartar las imágenes fuera de la base de datos por quedar fuera del elemento menu, no veo que tiene que ver.
Las imágenes van a tener que ser leídas desde archivos sí o sí, porque Tasker no permite (que yo sepa) cargarlas directamente desde una base de datos (en cuyo caso sí estaría muy bien tenerlas en ella). La cuestión es si cargarlas directamente o almacenando en la base de datos solamente el nombre de archivo y su ruta. O sea, tal como lo quieres hacer, antes de mostrar X jugadores, tendrías que buscar sus registros en sqlite, mediante Write Binary convertirlos de texto a varios archivos de imagen que puedan ser mostrados por Tasker, esperar a que dichos archivos existan, y entonces permitir (o refrescar) que puedan ser accedidos por Tasker. Y antes de todo eso, para almacenar las imágenes tendrías que usar Read Binary, porque Tasker no tiene instrucciones para manejar directamente variables con datos binarios. Basicamente lo que consigues con ello es ganar consistencia, porque todo queda en la base de datos, pero también ganas latencia, que pienso que sería suficiente para no merecer la pena. |
| Gracias de parte de: | ||
|
#30
|
||||
|
||||
|
IMAGEN/GOLES/PLAYER/USUARIO Porque si inserto las imágenes en la escena como "elemento imagen", no correrán junto al resto de datos de cada jugador, cuando haga swipe sobre el elemento menú. O sea, tal como lo quieres hacer, antes de mostrar X jugadores, tendrías que buscar sus registros en sqlite, mediante Write Binary convertirlos de texto a varios archivos de imagen que puedan ser mostrados por Tasker, esperar a que dichos archivos existan, y entonces permitir (o refrescar) que puedan ser accedidos por Tasker. Y antes de todo eso, para almacenar las imágenes tendrías que usar Read Binary, porque Tasker no tiene instrucciones para manejar directamente variables con datos binarios.
![]() ![]() En cuanto vaya probando lo que me has dicho, pondré el resultado por aquí. Gracias de nuevo. |
| Gracias de parte de: | ||
|
#31
|
||||
|
||||
|
Supongo que entre otras cosas, lo que quieres decir con esto es que un elemento menú de una escena de Tasker, nunca podrá mostrar una imagen, verdad? No obstante como te he comentado antes, tengo que empaparme un poco de lo que supone escribir y leer binarios, porque no tengo ni idea, pensaba que eran acciones de Tasker que estaban de adorno.
![]() ![]() |
| Gracias de parte de: | ||
|
#32
|
||||
|
||||
|
La opción que acabo de intentar, que no había caído hasta ahora, ha sido incluir la ruta del archivo png, en el campo que quiero que figure la imagen, y en poner el texto en formato html, de esta manera; <IMG SRC="imagen.png"> El caso es que así tampoco funciona, y en vez de la imagen, se ve un cuadro pequeño de color celeste, independientemente de la imagen que ponga. No entiendo porque no funciona, ya que si utilizo el texto en formato html para poner el texto en negrita, o en cualquier otro color, si que funciona. |
| Gracias de parte de: | ||
|
#33
|
||||
|
||||
|
Eso que has puesto es para generar páginas web o código del estilo. Para tu caso sería más bien:
Jugador: Hardcore Equipo: Villabajo Imagen: 01.png Jugador: Henry Equipo: Villabajo Imagen: 02.png Jugador: Connor Equipo: Villarriba Imagen: 01.png Jugador: McGregor Equipo: Villarriba Imagen: 02.png Donde cargues las imágenes algo como: //download/app_liga/imagenes_jugadores/%v_equipo/%v_imagen_jugador(1) //download/app_liga/imagenes_jugadores/%v_equipo/%v_imagen_jugador(2) ... //download/app_liga/imagenes_jugadores/%v_equipo/%v_imagen_jugador(11) Entre medias tendrías que crear el array %v_imagen_jugador y rellenarlo con los datos correspondientes de la BD. |
| Gracias de parte de: | ||
|
#34
|
||||
|
||||
|
Porque no lo consigo. He probado a poner "//ruta del archivo" con formato de texto html y con formato de texto plano, y no se ve la imagen. También he probado escribiendo "//download/ruta del archivo" porque no tenía claro si download había que ponerlo para llamar a la imagen, o lo habías puesto como si se tratase de una carpeta. Lo estoy intentado hacer más fácil, sin utilizar base de datos por lo pronto, si no, un simple elemento de texto, hasta que consiga que se vea la imagen. |
| Gracias de parte de: | ||
|
#35
|
||||
|
||||
|
Logicamente deberías preparar la estructura de carpetas, imágenes cada una en su carpeta correspondiente y con los nombres adecuados. Lo de "download" es solo un ejemplo, podría estar en cualquier otro sitio. De lo que se trata es que debería ser una ruta android válida, y luego añades una estructura con una carpeta con cada equipo e imágenes en cada una de las carpetas.
¿Estas usando un elemento de texto en lugar de uno de imagen para mostrar imágenes? |
| Gracias de parte de: | ||
|
#36
|
||||
|
||||
|
Por lo tanto para agilizar las pruebas, utilizo un elemento de texto. Tenía esperanzas que con formato de texto html permitiera cargar imágenes, y pensaba que la forma que habías indicado al final, era para eso mismo. Las etiquetas de las escenas de un elemento menú, permiten poner elementos de imágenes, pero, se repetiría la misma imagen en todas las filas del menú. |
|
#37
|
||||
|
||||
|
Por un lado debes distinguir entre almacenar imagenes en la base de datos, para lo cual hay que usar o bien Blob para almacenarlas tal cual (y que en principio no se puede hacer en Tasker) o bien convertirlas a formato texto y almacenarlas en la base de datos como texto. Y otra cosa MUY distinta a las anteriores es almacenar las rutas de archivos de imagen externos en la base de datos. He estado mirando el elemento menu, del que daba por hecho que se podrían especificar los iconos con una variable pero no es posible, y he encontrado un sitio donde Pent lo corrobora. Para que haya iconos estos deben de ser fijos, no pueden ser dinámicos. Debes tener cada icono con su etiqueta especifica. Pero he visto una forma (mala, pero mejor que nada) para hacerlo de forma pseudo-dinámica, que requeriría asumir un máximo de jugadores por equipo, por ejemplo 30 (no sé de cuantos es la plantilla máxima). //download/app_liga/imagenes_jugadores/%v_equipo/%v_imagen_jugador(1) Pongamos que tienes: //download/app_liga/imagenes_jugadores/sevilla/01.png . . //download/app_liga/imagenes_jugadores/sevilla/30.png .. //download/app_liga/imagenes_jugadores/zaragoza/01.png . //download/app_liga/imagenes_jugadores/zaragoza/30.png . . En la base de datos tienes todo bien identificado, ya que con nombre de equipo y nombre de imagen sabes cual coger para cada caso. Si el Zaragoza tiene por ejemplo 25 jugadores, del 26.png al 30.png deberían existir pero sería específica para estos casos (una imagen en blanco, por ejemplo). Creas una carpeta especifica para archivos temporales y copias en ella 30 imagenes, da igual cuales (porque los vas a sobreescribir después) pero tienen que ser imágenes válidas, por ejemplo los de uno de los equipos: //download/app_liga/imagenes_temp_menu/01.png . . . //download/app_liga/imagenes_temp_menu/30.png En el objeto menu de la escena coges para el primer elemento la imagen de esa ruta especial, con 01.png para el primero, para el segundo 02.png, ..., hasta el 30.png. Como nombre de momento usaremos una variable global (luego ya se vería a ver si se puede evitar), por ejemplo %JUGADOR1 para el primer elemento, %JUGADOR2 para el segundo, etc... El proceso sería: - Crear el array %JUGADOR1...%JUGADOR30. Si un equipo tiene solo 22, contando reservas, en los últimos 8 pones un guión, un espacio o lo que quieras y asignarle los nombres de jugadores que correspondan. - Para los iconos, si por ejemplo se trata del zaragoza, copiariamos todos los archivos sobreescribiendo de ..../imagenes_jugadores/zaragoza a .../imagenes_temp_menu, de modo que aunque para el primer jugador siempre carga el 01.png de esa ruta, este 01.png en realidad va a ser distinto según el equipo que sea. - Ahora cargas la escena. - Al cerrar la escena te cargas el array %JUGADOR. |
|
#38
|
||||
|
||||
|
Es diferente a mi planteamiento inicial, y es posible que tenga que cambiar muchas cosas en el proyecto, puesto que hasta ahora, lo que venía haciendo era rellenar las etiquetas del elemento menú, con el contenido de la base de datos, por lo tanto se rellenaba automáticamente. Supongo que te has fijado que hay tres formas de rellenar las etiquetas (variables, arrays o manual).
Además, la tabla no estaba dividida por equipos. Se trataba de una lista de jugadores de diferentes equipos, que subían o bajaban posiciones en el orden de la tabla (mejor dicho, en el orden en el que se mostraba la tabla), en base al número de goles que llevaban. Por lo pronto lo he probado como has dicho, con una carpeta temporal y una de un equipo y funciona perfectamente. No obstante tengo dudas de si finalmente podré utilizar este método para este proyecto en concreto, pero de lo que no tengo ninguna duda es que la solución es ingeniosa y puede que la única para modificar las imágenes de las etiquetas, por lo tanto abre muchas puertas para trabajar con escenas de Tasker. Por lo pronto ya has conseguido que esta noche pierda unas cuantas horas de sueño. Iré poniendo por aquí el resultado de como va quedando para el que le pueda interesar. Muchas gracias de nuevo, si no hubiera notado por tus comentarios, que te gusta poco el fútbol, te invitaría a jugar la liga . Un saludo!
|
|
#39
|
||||
|
||||
|
Es diferente a mi planteamiento inicial, y es posible que tenga que cambiar muchas cosas en el proyecto, puesto que hasta ahora, lo que venía haciendo era rellenar las etiquetas del elemento menú, con el contenido de la base de datos, por lo tanto se rellenaba automáticamente.
![]() Además, la tabla no estaba dividida por equipos. Se trataba de una lista de jugadores de diferentes equipos, que subían o bajaban posiciones en el orden de la tabla (mejor dicho, en el orden en el que se mostraba la tabla), en base al número de goles que llevaban.
![]() Cita:Muchas gracias de nuevo, si no hubiera notado por tus comentarios, que te gusta poco el fútbol, te invitaría a jugar la liga . Un saludo!
![]() |
| Gracias de parte de: | ||
|
|
|
#40
|
||||
|
||||
|
La escena principal, como ya he comentado, esta compuesta por un elemento menú, en la cual tras una consulta SQL Query, se actualizan todos los jugadores, y además tengo un icono, que utilizo para añadir jugadores a la tabla, mediante INSERT INTO. De esta forma, cada vez que haya que agregar un jugador (cada vez que un jugador que no esté en la tabla, marque un gol) se añade sin necesidad de modificar la escena, y lo puede hacer cualquiera de mis amigos que tienen la aplicación. Pero al utilizar el elemento menú, en modo "manual", cada vez que haya que agregar un jugador, tengo que hacer modificaciones en la escena, porque no hay ninguna acción de Tasker, que permita añadir un ITEMS, al elemento menú. Buen deporte también, habrá que construir un proyecto sobre Muay thai |
![]() |
Estás aquí
|
||||||
|
||||||