Avisos

Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 03/02/14, 01:35:52
Array

[xs_avatar]
manolazo manolazo no está en línea
Miembro del foro
 
Fecha de registro: jun 2012
Localización: Madrid
Mensajes: 219
Modelo de smartphone: Samsung Galaxy S7 edge
Tu operador: Pepephone
Poner GridLayout en API 10, errores?

Buenas.

Se sabe que para implementar un GridLayot es necesario minimo API 14, sin embargo quiero bajar el requerimiento en el manifest a API 10 para que el juego llegue a mas terminales.

Habia un tema abierto de hace tiemp o(http://www.htcmania.com/showthread.php?t=749677 ) pero el autor desistio.


He estado mirando como hacerlo importando la libreria de GridLayout que viene en la siguiente ruta: <sdk_folder>\extras\android\compatibility\v7\gridl ayout
siguiendo este metodo para importarla:
http://developer.android.com/tools/s...#libs-with-res

Una vez importada , en el readme.txt de dicha libreria indica que:
"Make sure you use <android.support.v7.widget.GridLayout> in your
layouts instead of <GridLayout>.
Same for <android.support.v7.widget.Space> instead of <Space>."

Por ejemplo:

Código:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.GridLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"  <==== the namespace used for the library project
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    app:columnCount="6" >                                <===== notice how we're using app:columnCount here, not android:columnCount!

    <Button
        android:id="@+id/button1"
        app:layout_column="1"                            <=== again, note the app: namespace
        app:layout_columnSpan="2"
        app:layout_gravity="left"
        app:layout_row="1"
        android:text="Button" />

    <CheckBox
        android:id="@+id/checkBox1"
        app:layout_column="4"
        app:layout_gravity="left"
        app:layout_row="2"
        android:text="CheckBox" />

    <Button
        android:id="@+id/button2"
        app:layout_column="5"
        app:layout_gravity="left"
        app:layout_row="3"
        android:text="Button" />

    <android.support.v7.widget.Space                    <=== space widgets also need the full support package path
        android:layout_width="21dp"                     <=== use the android namespace for width, height etc -- only use app: for the grid layout library's new resources
        android:layout_height="1dp"
        app:layout_column="0"
        app:layout_gravity="fill_horizontal"
        app:layout_row="0" />
El caso es que cuando hago estos cambios en los layouts , eclipse me lanza el siguiente error:

02-03 01:04:28.900: E/AndroidRuntime(2660): FATAL EXCEPTION: main
02-03 01:04:28.900: E/AndroidRuntime(2660): java.lang.NoSuchMethodError: android.support.v4.view.ViewGroupCompat.getLayoutM ode
02-03 01:04:28.900: E/AndroidRuntime(2660): at android.support.v7.widget.GridLayout$Bounds.includ e(GridLayout.java:2155)
02-03 01:04:28.900: E/AndroidRuntime(2660): at android.support.v7.widget.GridLayout$Axis.computeG roupBounds(GridLayout.java:1203)
02-03 01:04:28.900: E/AndroidRuntime(2660): at android.support.v7.widget.GridLayout$Axis.getGroup Bounds(GridLayout.java:1212)
02-03 01:04:28.900: E/AndroidRuntime(2660): at android.support.v7.widget.GridLayout$Axis.createLi nks(GridLayout.java:1221)
02-03 01:04:28.900: E/AndroidRuntime(2660): at android.support.v7.widget.GridLayout$Axis.getForwa rdLinks(GridLayout.java:1247)
02-03 01:04:28.900: E/AndroidRuntime(2660): at android.support.v7.widget.GridLayout$Axis.createAr cs(GridLayout.java:1372)
02-03 01:04:28.900: E/AndroidRuntime(2660): at android.support.v7.widget.GridLayout$Axis.getArcs( GridLayout.java:1405)
02-03 01:04:28.900: E/AndroidRuntime(2660): at android.support.v7.widget.GridLayout$Axis.computeL ocations(GridLayout.java:1576)
02-03 01:04:28.900: E/AndroidRuntime(2660): at android.support.v7.widget.GridLayout$Axis.getLocat ions(GridLayout.java:1597)
.
.
.
.



No se si esta mal implementada la libreria o si el error es en el layout o que demonios puede ser porque en StackOverFlow no veo una solucion al tema definitiva.

Alguna idea??
Responder Con Cita


  #2  
Viejo 03/02/14, 08:49:32
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
Estás usando una versión anticuada de la Android Support V4, asegúrate que estás usando la última versión de la V4 y de la V7. A mi con la última versión de ambas los GridLayout me funcionan perfectamente en API 8 (Froyo).
Responder Con Cita
  #3  
Viejo 03/02/14, 11:45:27
Array

[xs_avatar]
manolazo manolazo no está en línea
Miembro del foro
 
Fecha de registro: jun 2012
Localización: Madrid
Mensajes: 219
Modelo de smartphone: Samsung Galaxy S7 edge
Tu operador: Pepephone
Hola,

Como puedo saber si los que tengo no estan actualizados? a traves del android sdk manager?
como me bajo las ultimas versiones?

Edito, segun sdk manager tengo instalado el Android Support Library 19.0.1 aunque no esta instalado el android SUpport Repository. Se supone pues que ya lo tengo actualizado?

Última edición por manolazo Día 03/02/14 a las 11:59:28.
Responder Con Cita
  #4  
Viejo 03/02/14, 12:06:00
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
Tienes que actualizar también la librería en el proyecto, no basta con bajarla con el SDK Manager.

Borra la support v4 de la carpeta Libs en el Eclipse. Y después dale con el botón derecho al proyecto y selecciona: Android Tools -> Add Support Library...
Responder Con Cita
  #5  
Viejo 04/02/14, 01:56:08
Array

[xs_avatar]
manolazo manolazo no está en línea
Miembro del foro
 
Fecha de registro: jun 2012
Localización: Madrid
Mensajes: 219
Modelo de smartphone: Samsung Galaxy S7 edge
Tu operador: Pepephone
Hola,

Efectivamente tuve que actualizar la libreria como dices en el proyecto y ya funciona bien el GridLayout en API10.

Ahora el problema que tengo es que ObjectAnimator y otras clases de animacion requieren API11 y tengo que importar una libreria externa como nineoldandroids para que funcione en API10 (http://nineoldandroids.com/#usage).

Bueno... pues no soy capaz de importarla.
Segun la pagina del autor: This library is presented as a .jar file which you can include in the libs/ folder of your application. You can download the latest version from the GitHub downloads page.
pero al descargar el archivo esta en .zip

Al descomprimirlo hay una carpeta llamada library otra sample y otros archivos tipo readme etc
como lo hago?
Hay que crear un .jar de la carpeta library? un .jar del zip origina? No dice el autor que la librearia viene en .jar?

Un saludo.
Responder Con Cita
  #6  
Viejo 04/02/14, 08:38:46
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
Yo también uso NineOldAndroids en mis proyectos, y lo importo como proyecto.

Añades el proyecto al Eclipse, y después en las propiedades de tu proyecto añades como librería a NineOldAndroids.
Responder Con Cita
  #7  
Viejo 04/02/14, 12:27:52
Array

[xs_avatar]
manolazo manolazo no está en línea
Miembro del foro
 
Fecha de registro: jun 2012
Localización: Madrid
Mensajes: 219
Modelo de smartphone: Samsung Galaxy S7 edge
Tu operador: Pepephone
Buenas.

Asi lo hice con la libreria v7 , importando el proyecto y luego agreegandolo en propiedades, pero con NineOldAndroids no hay forma, no se que puedo estar haciendo mal...

1. Descomprimo el JakeWharton-NineOldAndroids-2.4.0-0-.g9f20fd7.zip en el escritorio , dentro me queda la carpeta JakeWharton-NineOldAndroids-2.4.0-0-.g9f20fd7 con dos carpetas library, sample y 6 archicos mas.

2. En eclipse en el package explorer pulso import -> Existing projects intoworkspace -> me voy al escritorio y seleccion la carpeta descomprimida ... pero eclipse me dice que no hay proyectos que importar.

Alguna idea?
Responder Con Cita
  #8  
Viejo 04/02/14, 14:47:38
Array

[xs_avatar]
manolazo manolazo no está en línea
Miembro del foro
 
Fecha de registro: jun 2012
Localización: Madrid
Mensajes: 219
Modelo de smartphone: Samsung Galaxy S7 edge
Tu operador: Pepephone
Buienas.

Por lo que veo creo que no se importa como proyecto. He ido a la seccion de descargas y ahi aparece el .jar. Con solo copiarlo a la carpeta libs del proyecto es suficiente.

Un saludo
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 02:25:51 (GMT +1)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /