Aplicación Android de ejemplo 2

Posted on 22 of febrero, 2016 by admin in Android

Android posee un grupo de controles para el manejo de la captura de fechas y horas, mediante a diálogos, en los cuales los usuarios pueden seleccionar.

El time picker permiten al usuario seleccionar la hora, minutos y si es AM o PM. Al igual que el Date picker permite seleccionar el año, el mes y el día.

Lo recomendado para utilizar estos componentes heredaremos de la clase DialogFragment y retornaremos un TimePickerDialog o un DatePickerDialog.

Para utilizar los pickers con un DialogFragment necesitamos:

Definir un fragment class que herede de DialogFragment y retornaremos un TimePickerDialog o un DatePickerDialog y llamaremos el método onCreateDialog.

Implementaremos el OnTimeSetListener o el OnDateSetListener interface que es el disparador del usuario.

Iniciamos el Android estudio y creamos un proyecto:

 

page1

Nombramos la aplicación:

page2

En la pantalla siguiente dejamos los parámetros por default.

page3

Ahora adicionamos una activity en blanco.

page4

Y luego dejamos los parámetros por default y creamos la aplicación.

page5

Luego adicionamos dos clases:

  1. TimePickerFrag
  2. DatePickerFrag

page6

package jprograming.com.examples;

import android.annotation.TargetApi;
import android.app.Dialog;
import android.app.DialogFragment;
import android.app.TimePickerDialog;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.widget.TimePicker;

import android.text.format.DateFormat;
import java.util.Calendar;

/**
* Created by jencarnacion on 2/22/2016.
*/
public class TimePickerFrag extends android.support.v4.app.DialogFragment
implements TimePickerDialog.OnTimeSetListener
{

@TargetApi(Build.VERSION_CODES.HONEYCOMB)
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState){
final Calendar calendar = Calendar.getInstance();
int hh = calendar.get(Calendar.HOUR_OF_DAY);
int mm = calendar.get(Calendar.MINUTE);

return new TimePickerDialog(getActivity(),this,hh,mm, DateFormat.is24HourFormat(getActivity()));

}

public TimePickerFrag(){

}

@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {

}
}

package jprograming.com.examples;

import android.annotation.TargetApi;
import android.app.DatePickerDialog;
import android.app.Dialog;
import android.app.TimePickerDialog;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.text.format.DateFormat;
import android.widget.DatePicker;
import android.widget.TimePicker;

import java.util.Calendar;

/**
* Created by jencarnacion on 2/22/2016.
*/
public class DatePickerFrag  extends android.support.v4.app.DialogFragment
implements DatePickerDialog.OnDateSetListener{

@TargetApi(Build.VERSION_CODES.HONEYCOMB)
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState){
final Calendar calendar = Calendar.getInstance();
int yy = calendar.get(Calendar.YEAR);
int mm = calendar.get(Calendar.MONTH);
int dd= calendar.get(Calendar.DAY_OF_MONTH);

return new DatePickerDialog(getActivity(),this,yy,mm,dd);

}

public DatePickerFrag(){

}

@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {

}
}

Ahora en la main activity adicionamos dos botones:

<?xml version=“1.0” encoding=“utf-8″?>
<LinearLayout xmlns:android=“http://schemas.android.com/apk/res/android”
xmlns:tools=“http://schemas.android.com/tools”
android:orientation=“vertical”
android:layout_width=“fill_parent”
android:layout_height=“fill_parent”
tools:context=“jprograming.com.examples.MainActivity”>

<Button
android:layout_width=“wrap_content”
android:layout_height=“wrap_content”
android:text=“Time Picker”
android:id=“@+id/buttonTimePicker”
android:onClick=“onButtonTimePickerClick”/>

<Button
android:layout_width=“wrap_content”
android:layout_height=“wrap_content”
android:text=“Date Picker”
android:id=“@+id/buttonDatePicker”
android:onClick=“onButtonTimePickerClick”/>

</LinearLayout>

La vista se vería de esta forma:

page8

En el main activity el archivo .java adicionamos los siguientes métodos:

public void onButtonTimePickerClick(View view){
android.support.v4.app.DialogFragment timepickerFrag =
new TimePickerFrag();

timepickerFrag.show(getSupportFragmentManager(), “mytimepicker”);
}
//
public void onButtonDatePickerClick(View view){
android.support.v4.app.DialogFragment datepickerFrag =
new TimePickerFrag();

datepickerFrag.show(getSupportFragmentManager(),“mydatepicker”);
}

El resultado final sería lo siguiente:

page8

page10

page9

Articulo17 Articulo17b

 


Descragar la aplicacion de ejemplo aqui:

Open Directory Project at dmoz.org