Síguenos en...
Síguenos en Twitter Síguenos en Facebook Sigue nuestro canal YouTube
Registrarse
Compartir
+ Responder tema
Página 3 de 3 PrimerPrimer 123
Resultados 21 al 30 de 30

Tema: Curso de programación Android

  1. #21
    Avatar de jeryus
    Fecha de ingreso
    13 jul, 11
    Ubicación
    A, A
    Edad
    26
    Mensajes
    49
    checaremos que tal esta, es interesante

    Temas Similares en HTCSpain:
  2. [VIDEO-TUTORIAL] Programación de Aplicaciones en Android + Descargas - [pebels]
  3. [VIDEO-TUTORIAL] Programación de Juegos en Android + Descargas - [pebels]

  4. #22
    Avatar de ocorvo
    Fecha de ingreso
    03 abr, 08
    Mensajes
    2
    gracias por el trabajo y el aporte

    Cita Iniciado por pebels Ver mensaje
    Interfaz de usuario en Android: Controles personalizados (I)

    En artículos anteriores de la serie hemos conocido y aprendido a utilizar muchos de los controles que proporciona Android en su SDK. Con la ayuda de estos controles podemos diseñar interfaces gráficas de lo más variopinto pero en ocasiones, si queremos dar un toque especial y original a nuestra aplicación, o simplemente si necesitamos cierta funcionalidad no presente en los componentes estándar de Android, nos vemos en la necesidad de crear nuestros propios controles personalizados, diseñados a medida de nuestros requisitos.
    Android admite por supuesto crear controles personalizados, y permite hacerlo de diferentes formas:

    1. Extendiendo la funcionalidad de un control ya existente.
    2. Combinando varios controles para formar un otro más complejo.
    3. Diseñando desde cero un nuevo control.

    En este primer artículo sobre el tema vamos a hablar de la primera opción, es decir, vamos a ver cómo podemos crear un nuevo control partiendo de la base de un control ya existente. A modo de ejemplo, vamos a extender el control EditText (cuadro de texto) para que muestre en todo momento el número de caracteres que contiene a medida que se escribe en él. Intentaríamos emular algo así como el editor de mensajes SMS del propio sistema operativo, que nos avisa del número de caracteres que contiene el mensaje. En nuestro caso, como resultado obtendremos un control como el que se muestra en la siguiente imagen:



    Como vemos, en la esquina superior derecha del cuadro de texto vamos a mostrar el número de caracteres del mensaje de texto introducido, que ira actualizándose a medida que modificamos el texto.
    Para empezar, vamos a crear una nueva clase java que extienda del control que queremos utilizar como base, en este caso EditText.

    1. public class ExtendedEditText extends EditText
    2. {
    3. //...
    4. }

    Tras esto, sobreescribiremos siempre los tres constructores heredados, donde por el momento nos limitaremos a llamar al mismo constructor de la clase padre.

    1. public ExtendedEditText(Context context, AttributeSet attrs, int defStyle){
    2. super(context, attrs,defStyle);
    3. }
    4.
    5. public ExtendedEditText(Context context, AttributeSet attrs) {
    6. super(context, attrs);
    7. }
    8.
    9. public ExtendedEditText(Context context) {
    10. super(context);
    11. }

    Por último el paso más importante. Dado que queremos modificar el aspecto del control para añadir el contador de caracteres tendremos que sobreescribir el evento onDraw(), que es llamado por Android cada vez que hay que redibujar el control en pantalla. Este método recibe como parámetro un objeto Canvas, que no es más que el “lienzo” sobre el que podemos dibujar todos los elementos extra necesarios en el control. El objeto Canvas, proporciona una serie de métodos para dibujar cualquier tipo de elemento (lineas, rectángulos, elipses, texto, bitmaps, …) sobre el espacio ocupado por el control. En nuestro caso tan sólo vamos a necesitar dibujar sobre el control un rectángulo que sirva de fondo para el contador y el texto del contador con el número de caracteres actual del cuadro de texto. No vamos a entrar en muchos detalles sobre la forma de dibujar gráficos ya que ése será tema de otro artículo, pero vamos a ver al menos las acciones principales.
    En primer lugar definiremos los “pinceles” (objetos Paint) que utilizaremos para dibujar, uno de ellos (p1) de color negro y relleno sólido para el fondo del contador, y otro (p2) de color blanco para el texto.

    1. Paint p1 = new Paint(Paint.ANTI_ALIAS_FLAG);
    2. p1.setColor(Color.BLACK);
    3. p1.setStyle(Style.FILL);
    4.
    5. Paint p2 = new Paint(Paint.ANTI_ALIAS_FLAG);
    6. p2.setColor(Color.WHITE);

    Dado que estos elementos tan sólo hará falta crearlos la primera vez que se dibuje el control, para evitar trabajo innecesario no incluiremos su definición en el método onDraw(), sino que los definiremos como atributos de la clase y los inicializaremos en el constructor del control (en los tres).
    Una vez definidos los diferentes pinceles necesarios, dibujaremos el fondo y el texto del contador mediante los métodos drawRect() y drawText(), respectivamente, del objeto canvas recibido en el evento.

    1. @Override
    2. public void onDraw(Canvas canvas)
    3. {
    4. //Llamamos al método de la clase base (EditText)
    5. super.onDraw(canvas);
    6.
    7. //Dibujamos el fondo negro del contador
    8. canvas.drawRect(this.getWidth()-30, 5,
    9. this.getWidth()-5, 20, p1);
    10.
    11. //Dibujamos el número de caracteres sobre el contador
    12. canvas.drawText("" + this.getText().toString().length(),
    13. this.getWidth()-28, 17, p2);
    14. }

    Como puede comprobarse, a estos métodos se les pasará como parámetro las coordenadas del elemento a dibujar relativas al espacio ocupado por el control y el pincel a utilizar en cada caso.
    Hecho esto, ya tenemos finalizado nuestro cuadro de texto personalizado con contador de caracteres. Para añadirlo a la interfaz de nuestra aplicación lo incluiremos en el layout XML de la ventana tal como haríamos con cualquier otro control, teniendo en cuenta que deberemos hacer referencia a él con el nombre completo de la nueva clase creada (incluido el paquete java), que en mi caso particular seríanet.sgoliver.ExtendedEditText.

    1. <net.sgoliver.ExtendedEditText
    2. android:id="@+id/TxtPrueba"
    3. android:layout_width="fill_parent"
    4. android:layout_height="wrap_content" />

    En el siguiente artículo veremos cómo crear un control personalizado utilizando la segunda de las opciones expuestas, es decir, combinando varios controles ya existentes. Comentaremos además como añadir eventos y propiedades personalizadas a nuestro control y cómo hacer referencia a dichas propiedades desde su definición XML.
    Podéis descargar el código de este artículo desde este enlace.

  5. #23
    Avatar de jesu4
    Fecha de ingreso
    18 sep, 07
    Mensajes
    11
    me interesa mucho este curso

  6. #24
    Avatar de victorlazaror
    Fecha de ingreso
    12 oct, 12
    Ubicación
    toledo
    Mensajes
    203
    que tengo que hacer para hacer este curso?

  7. #25
    Avatar de erchupa
    Fecha de ingreso
    15 oct, 12
    Ubicación
    vitoria
    Edad
    38
    Mensajes
    17
    gran aporte

  8. #26
    Avatar de antonio19681968
    Fecha de ingreso
    13 jul, 12
    Mensajes
    1
    muy bueno ok

  9. #27
    Avatar de luiggidj
    Fecha de ingreso
    24 feb, 13
    Mensajes
    17
    Gran trabajo, gracias por compartir

  10. #28

    Avatar de franq36
    Fecha de ingreso
    06 ago, 11
    Edad
    38
    Mensajes
    1,965
    gracias le echaremos un vistazo

    saludos

  11. #29
    Avatar de nachette225
    Fecha de ingreso
    27 abr, 13
    Ubicación
    zaragoza
    Edad
    43
    Mensajes
    14
    A estudiar!!!

  12. #30
    Avatar de CarlosVM
    Fecha de ingreso
    12 sep, 12
    Ubicación
    Malaga
    Edad
    35
    Mensajes
    269
    Gracias por este curso!!Actualmente estoy con Java,pero me meto en marcadores estos enlaces!!MUCHISIMAS GRACIAS COMPAÑERO!


 

 
+ Responder tema
Página 3 de 3 PrimerPrimer 123

Nuestros visitantes llegarón a esta página buscando:

descargar android-HolaUsuario.zip

android-holausuario.zip

iniciar spinner con valor determinado android

codigo android holausuario zip

Codigoandroid-HolaUsuario.zip

content

SEO Blog

Etiquetas para este tema