Sunteți pe pagina 1din 6

import import import import import import import import import import import import import

android.app.Activity; android.os.Bundle; android.content.ContentValues; android.database.sqlite.SQLiteDatabase; android.widget.EditText; android.widget.Button; android.widget.Toast; android.util.Log; android.view.View; android.content.Intent; android.net.Uri; android.app.AlertDialog; android.content.DialogInterface;

public class agenda extends Activity { EditText editNombre,editTelefono; private Button botonGuardar; private Button botonLlamar; private Button botonEliminarBD; private Button botonCerrar; private private private private SQLiteDatabase baseDatos; static final String TAG = "bdagenda"; static final String nombreBD = "agenda"; static final String tablaContacto = "contacto";

//guardamos en un String toda la creacin de la tabla private static final String crearTablaContacto = "create table if not exists " + " contacto (codigo integer primary key autoincrement, " + " nombre text not null, telefono text not null unique);"; @Override public void onCreate(Bundle savedInstanceState) { //Asignamos a cada objeto visual creado a su respectivo elemento de main.xml super.onCreate(savedInstanceState); setContentView(R.layout.main); editNombre = (EditText) findViewById(R.id.txtNombre); editTelefono = (EditText) findViewById(R.id.txtTelefono); botonGuardar = (Button) findViewById(R.id.btGuardar); botonLlamar = (Button) findViewById(R.id.btLlamar);

botonEliminarBD = (Button) findViewById(R.id.btEliminarBD); botonCerrar = (Button) findViewById(R.id.btCerrar); //Guardar el contacto actual en la agenda botonGuardar.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { //Abrir la base de datos, se crear si no existe abrirBasedatos(); //Insertar una fila o registro en la tabla "contacto" //si la insercin es correcta devolver true boolean resultado = insertarFila(editNombre.getText().toString(), editTelefono.getText().toString()); if(resultado) Toast.makeText(getApplicationContext(), "Contacto aadido correctamente", Toast.LENGTH_LONG).show(); else Toast.makeText(getApplicationContext(), "No se ha podido guardar el contacto" , Toast.LENGTH_LONG).show(); } }); //Llamar al contacto actual por telfono botonLlamar.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { //Mostrar un mensaje de confirmacin antes de realizar la llamada AlertDialog.Builder alertDialog = new AlertDialog.Builder(agenda.this); alertDialog.setMessage("Desea realizar la llamada al contacto?"); alertDialog.setTitle("Llamar a contacto..."); alertDialog.setIcon(android.R.drawable.ic_dialog_alert); alertDialog.setCancelable(false); alertDialog.setPositiveButton("S", new DialogInterface.OnClickListener()

{ public void onClick(DialogInterface dialog, int which) { try { EditText num=(EditText)findViewById(R.id.txtTelefono); String number = "tel:" + num.getText().toString().trim(); Toast.makeText(getApplicationContext(), "Llamando al " + num.getText().toString().trim(), Toast.LENGTH_LONG).show(); Intent callIntent = new Intent(Intent.ACTION_CALL, Uri.parse(number)); startActivity(callIntent); } catch (Exception e) { Toast.makeText(getApplicationContext(), "No se ha podido realizar la llamada", Toast.LENGTH_LONG).show(); } } }); alertDialog.setNegativeButton("No", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { Toast.makeText(getApplicationContext(), "Llamada cancelada", Toast.LENGTH_LONG).show(); } }); alertDialog.show(); } }); //Eliminar la base de datos de la agenda botonEliminarBD.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { //Mostrar un mensaje de confirmacin antes de eliminar la base de datos AlertDialog.Builder alertDialog = new AlertDialog.Builder(agenda.this);

alertDialog.setMessage("Desea eliminar la base de datos por completo?"); alertDialog.setTitle("Eliminar agenda..."); alertDialog.setIcon(android.R.drawable.ic_dialog_ale rt); alertDialog.setCancelable(false); alertDialog.setPositiveButton("S", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { try { Toast.makeText(getApplicationContext(), "Eliminando base de datos: " + nombreBD, Toast.LENGTH_LONG).show(); boolean resultado = deleteDatabase(nombreBD); if(resultado) Toast.makeText(getApplicationContext(), "Base de datos eliminada correctamente", Toast.LENGTH_LONG).show(); else Toast.makeText(getApplicationContext(), "No se ha podido eliminar la base de datos", Toast.LENGTH_LONG).show(); } catch (Exception e) { Toast.makeText(getApplicationContext(), "No se ha podido eliminar la base de datos", Toast.LENGTH_LONG).show(); } } }); alertDialog.setNegativeButton("No", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { Toast.makeText(getApplicationContext(), "Eliminacin de base de datos cancelada", Toast.LENGTH_LONG).show(); } }); alertDialog.show();

} }); //Cerrar aplicacin Android botonCerrar.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { finish(); } });

//Procedimiento para abrir la base de datos //si no existe se crear, tambin se crear la tabla contacto private void abrirBasedatos() { try { baseDatos = openOrCreateDatabase(nombreBD, MODE_WORLD_WRITEABLE, null); baseDatos.execSQL(crearTablaContacto); } catch (Exception e) { Log.i(TAG, "Error al abrir o crear la base de datos" + e); } } //Mtodo que realiza la insercin de los datos en nuestra tabla contacto private boolean insertarFila(String nombre, String telefono) { ContentValues values = new ContentValues(); values.put("nombre",nombre ); values.put("telefono", telefono); Toast.makeText(getApplicationContext(), "Nombre: " + nombre + ", " + "telfono: " + telefono, Toast.LENGTH_LONG).show();

return (baseDatos.insert(tablaContacto, null, values) > 0); } }

S-ar putea să vă placă și