├── .gitignore ├── .idea ├── compiler.xml ├── copyright │ └── profiles_settings.xml ├── encodings.xml ├── gradle.xml ├── inspectionProfiles │ ├── Project_Default.xml │ └── profiles_settings.xml ├── misc.xml ├── modules.xml ├── runConfigurations.xml └── vcs.xml ├── app ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── co │ │ └── quindio │ │ └── sena │ │ └── ejemplosqlite │ │ └── ExampleInstrumentedTest.java │ ├── main │ ├── AndroidManifest.xml │ ├── java │ │ └── co │ │ │ └── quindio │ │ │ └── sena │ │ │ └── ejemplosqlite │ │ │ ├── ConexionSQLiteHelper.java │ │ │ ├── ConsultaComboActivity.java │ │ │ ├── ConsultarListaListViewActivity.java │ │ │ ├── ConsultarUsuariosActivity.java │ │ │ ├── DetalleMascotaActivity.java │ │ │ ├── DetalleUsuarioActivity.java │ │ │ ├── ListaMascotasActivity.java │ │ │ ├── ListaPersonasRecycler.java │ │ │ ├── MainActivity.java │ │ │ ├── RegistroMascotaActivity.java │ │ │ ├── RegistroUsuariosActivity.java │ │ │ ├── adaptadores │ │ │ └── ListaPersonasAdapter.java │ │ │ ├── entidades │ │ │ ├── Mascota.java │ │ │ └── Usuario.java │ │ │ └── utilidades │ │ │ └── Utilidades.java │ └── res │ │ ├── drawable │ │ └── flech.png │ │ ├── layout │ │ ├── activity_consulta_combo.xml │ │ ├── activity_consultar_lista_list_view.xml │ │ ├── activity_consultar_usuarios.xml │ │ ├── activity_detalle_mascota.xml │ │ ├── activity_detalle_usuario.xml │ │ ├── activity_lista_mascotas.xml │ │ ├── activity_lista_personas_recycler.xml │ │ ├── activity_main.xml │ │ ├── activity_registro_mascota.xml │ │ ├── activity_registro_usuarios.xml │ │ └── list_item_personas.xml │ │ ├── mipmap-hdpi │ │ └── ic_launcher.png │ │ ├── mipmap-mdpi │ │ └── ic_launcher.png │ │ ├── mipmap-xhdpi │ │ └── ic_launcher.png │ │ ├── mipmap-xxhdpi │ │ └── ic_launcher.png │ │ ├── mipmap-xxxhdpi │ │ └── ic_launcher.png │ │ ├── values-w820dp │ │ └── dimens.xml │ │ └── values │ │ ├── colors.xml │ │ ├── dimens.xml │ │ ├── strings.xml │ │ └── styles.xml │ └── test │ └── java │ └── co │ └── quindio │ └── sena │ └── ejemplosqlite │ └── ExampleUnitTest.java ├── build.gradle ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle /.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/libraries 6 | .DS_Store 7 | /build 8 | /captures 9 | .externalNativeBuild 10 | -------------------------------------------------------------------------------- /.idea/compiler.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /.idea/gradle.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 18 | 19 | -------------------------------------------------------------------------------- /.idea/inspectionProfiles/Project_Default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 10 | -------------------------------------------------------------------------------- /.idea/inspectionProfiles/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 19 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 46 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /.idea/runConfigurations.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 11 | 12 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /app/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'com.android.application' 2 | 3 | android { 4 | compileSdkVersion 25 5 | buildToolsVersion "25.0.2" 6 | defaultConfig { 7 | applicationId "co.quindio.sena.ejemplosqlite" 8 | minSdkVersion 15 9 | targetSdkVersion 25 10 | versionCode 1 11 | versionName "1.0" 12 | testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 13 | } 14 | buildTypes { 15 | release { 16 | minifyEnabled false 17 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 18 | } 19 | } 20 | } 21 | 22 | dependencies { 23 | compile fileTree(dir: 'libs', include: ['*.jar']) 24 | androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 25 | exclude group: 'com.android.support', module: 'support-annotations' 26 | }) 27 | compile 'com.android.support:appcompat-v7:25.3.1' 28 | compile 'com.android.support:recyclerview-v7:25.3.1' 29 | testCompile 'junit:junit:4.12' 30 | } 31 | -------------------------------------------------------------------------------- /app/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # By default, the flags in this file are appended to flags specified 3 | # in C:\sdk/tools/proguard/proguard-android.txt 4 | # You can edit the include path and order by changing the proguardFiles 5 | # directive in build.gradle. 6 | # 7 | # For more details, see 8 | # http://developer.android.com/guide/developing/tools/proguard.html 9 | 10 | # Add any project specific keep options here: 11 | 12 | # If your project uses WebView with JS, uncomment the following 13 | # and specify the fully qualified class name to the JavaScript interface 14 | # class: 15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 16 | # public *; 17 | #} 18 | -------------------------------------------------------------------------------- /app/src/androidTest/java/co/quindio/sena/ejemplosqlite/ExampleInstrumentedTest.java: -------------------------------------------------------------------------------- 1 | package co.quindio.sena.ejemplosqlite; 2 | 3 | import android.content.Context; 4 | import android.support.test.InstrumentationRegistry; 5 | import android.support.test.runner.AndroidJUnit4; 6 | 7 | import org.junit.Test; 8 | import org.junit.runner.RunWith; 9 | 10 | import static org.junit.Assert.*; 11 | 12 | /** 13 | * Instrumentation test, which will execute on an Android device. 14 | * 15 | * @see Testing documentation 16 | */ 17 | @RunWith(AndroidJUnit4.class) 18 | public class ExampleInstrumentedTest { 19 | @Test 20 | public void useAppContext() throws Exception { 21 | // Context of the app under test. 22 | Context appContext = InstrumentationRegistry.getTargetContext(); 23 | 24 | assertEquals("co.quindio.sena.ejemplosqlite", appContext.getPackageName()); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /app/src/main/java/co/quindio/sena/ejemplosqlite/ConexionSQLiteHelper.java: -------------------------------------------------------------------------------- 1 | package co.quindio.sena.ejemplosqlite; 2 | 3 | import android.content.Context; 4 | import android.database.sqlite.SQLiteDatabase; 5 | import android.database.sqlite.SQLiteOpenHelper; 6 | 7 | import co.quindio.sena.ejemplosqlite.utilidades.Utilidades; 8 | 9 | /** 10 | * Created by CHENAO on 7/05/2017. 11 | */ 12 | 13 | public class ConexionSQLiteHelper extends SQLiteOpenHelper { 14 | 15 | 16 | 17 | public ConexionSQLiteHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) { 18 | super(context, name, factory, version); 19 | } 20 | 21 | @Override 22 | public void onCreate(SQLiteDatabase db) { 23 | db.execSQL(Utilidades.CREAR_TABLA_USUARIO); 24 | db.execSQL(Utilidades.CREAR_TABLA_MASCOTA); 25 | } 26 | 27 | @Override 28 | public void onUpgrade(SQLiteDatabase db, int versionAntigua, int versionNueva) { 29 | db.execSQL("DROP TABLE IF EXISTS "+Utilidades.TABLA_USUARIO); 30 | db.execSQL("DROP TABLE IF EXISTS "+Utilidades.TABLA_MASCOTA); 31 | onCreate(db); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /app/src/main/java/co/quindio/sena/ejemplosqlite/ConsultaComboActivity.java: -------------------------------------------------------------------------------- 1 | package co.quindio.sena.ejemplosqlite; 2 | 3 | import android.database.Cursor; 4 | import android.database.sqlite.SQLiteDatabase; 5 | import android.support.v7.app.AppCompatActivity; 6 | import android.os.Bundle; 7 | import android.util.Log; 8 | import android.view.View; 9 | import android.widget.AdapterView; 10 | import android.widget.ArrayAdapter; 11 | import android.widget.Spinner; 12 | import android.widget.TextView; 13 | import android.widget.Toast; 14 | 15 | import java.util.ArrayList; 16 | 17 | import co.quindio.sena.ejemplosqlite.entidades.Usuario; 18 | import co.quindio.sena.ejemplosqlite.utilidades.Utilidades; 19 | 20 | public class ConsultaComboActivity extends AppCompatActivity { 21 | 22 | Spinner comboPersonas; 23 | TextView txtNombre,txtDocumento,txtTelefono; 24 | ArrayList listaPersonas; 25 | ArrayList personasList; 26 | 27 | ConexionSQLiteHelper conn; 28 | 29 | @Override 30 | protected void onCreate(Bundle savedInstanceState) { 31 | super.onCreate(savedInstanceState); 32 | setContentView(R.layout.activity_consulta_combo); 33 | 34 | conn=new ConexionSQLiteHelper(getApplicationContext(),"bd_usuarios",null,1); 35 | 36 | comboPersonas= (Spinner) findViewById(R.id.comboPersonas); 37 | 38 | txtDocumento= (TextView) findViewById(R.id.txtDocumento); 39 | txtNombre= (TextView) findViewById(R.id.txtNombre); 40 | txtTelefono= (TextView) findViewById(R.id.txtTelefono); 41 | 42 | consultarListaPersonas(); 43 | 44 | ArrayAdapter adaptador=new ArrayAdapter 45 | (this,android.R.layout.simple_spinner_item,listaPersonas); 46 | 47 | comboPersonas.setAdapter(adaptador); 48 | 49 | comboPersonas.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 50 | @Override 51 | public void onItemSelected(AdapterView parent, View view, int position, long idl) { 52 | 53 | if (position!=0){ 54 | txtDocumento.setText(personasList.get(position-1).getId().toString()); 55 | txtNombre.setText(personasList.get(position-1).getNombre()); 56 | txtTelefono.setText(personasList.get(position-1).getTelefono()); 57 | }else{ 58 | txtDocumento.setText(""); 59 | txtNombre.setText(""); 60 | txtTelefono.setText(""); 61 | } 62 | 63 | 64 | } 65 | 66 | @Override 67 | public void onNothingSelected(AdapterView adapterView) { 68 | 69 | } 70 | }); 71 | 72 | } 73 | 74 | private void consultarListaPersonas() { 75 | SQLiteDatabase db=conn.getReadableDatabase(); 76 | 77 | Usuario persona=null; 78 | personasList =new ArrayList(); 79 | //select * from usuarios 80 | Cursor cursor=db.rawQuery("SELECT * FROM "+Utilidades.TABLA_USUARIO,null); 81 | 82 | while (cursor.moveToNext()){ 83 | persona=new Usuario(); 84 | persona.setId(cursor.getInt(0)); 85 | persona.setNombre(cursor.getString(1)); 86 | persona.setTelefono(cursor.getString(2)); 87 | 88 | Log.i("id",persona.getId().toString()); 89 | Log.i("Nombre",persona.getNombre()); 90 | Log.i("Tel",persona.getTelefono()); 91 | 92 | personasList.add(persona); 93 | 94 | } 95 | obtenerLista(); 96 | } 97 | 98 | private void obtenerLista() { 99 | listaPersonas=new ArrayList(); 100 | listaPersonas.add("Seleccione"); 101 | 102 | for(int i=0;i listaInformacion; 24 | ArrayList listaUsuarios; 25 | 26 | ConexionSQLiteHelper conn; 27 | 28 | @Override 29 | protected void onCreate(Bundle savedInstanceState) { 30 | super.onCreate(savedInstanceState); 31 | setContentView(R.layout.activity_consultar_lista_list_view); 32 | 33 | conn=new ConexionSQLiteHelper(getApplicationContext(),"bd_usuarios",null,1); 34 | 35 | listViewPersonas= (ListView) findViewById(R.id.listViewPersonas); 36 | 37 | consultarListaPersonas(); 38 | 39 | ArrayAdapter adaptador=new ArrayAdapter(this,android.R.layout.simple_list_item_1,listaInformacion); 40 | listViewPersonas.setAdapter(adaptador); 41 | 42 | listViewPersonas.setOnItemClickListener(new AdapterView.OnItemClickListener() { 43 | @Override 44 | public void onItemClick(AdapterView adapterView, View view, int pos, long l) { 45 | String informacion="id: "+listaUsuarios.get(pos).getId()+"\n"; 46 | informacion+="Nombre: "+listaUsuarios.get(pos).getNombre()+"\n"; 47 | informacion+="Telefono: "+listaUsuarios.get(pos).getTelefono()+"\n"; 48 | 49 | Toast.makeText(getApplicationContext(),informacion,Toast.LENGTH_LONG).show(); 50 | 51 | Usuario user=listaUsuarios.get(pos); 52 | 53 | Intent intent=new Intent(ConsultarListaListViewActivity.this,DetalleUsuarioActivity.class); 54 | 55 | Bundle bundle=new Bundle(); 56 | bundle.putSerializable("usuario",user); 57 | 58 | intent.putExtras(bundle); 59 | startActivity(intent); 60 | 61 | } 62 | }); 63 | 64 | } 65 | 66 | private void consultarListaPersonas() { 67 | SQLiteDatabase db=conn.getReadableDatabase(); 68 | 69 | Usuario usuario=null; 70 | listaUsuarios=new ArrayList(); 71 | //select * from usuarios 72 | Cursor cursor=db.rawQuery("SELECT * FROM "+Utilidades.TABLA_USUARIO,null); 73 | 74 | while (cursor.moveToNext()){ 75 | usuario=new Usuario(); 76 | usuario.setId(cursor.getInt(0)); 77 | usuario.setNombre(cursor.getString(1)); 78 | usuario.setTelefono(cursor.getString(2)); 79 | 80 | listaUsuarios.add(usuario); 81 | } 82 | obtenerLista(); 83 | } 84 | 85 | private void obtenerLista() { 86 | listaInformacion=new ArrayList(); 87 | 88 | for (int i=0; i listaInformacion; 24 | ArrayList listaMascotas; 25 | 26 | ConexionSQLiteHelper conn; 27 | 28 | @Override 29 | protected void onCreate(Bundle savedInstanceState) { 30 | super.onCreate(savedInstanceState); 31 | setContentView(R.layout.activity_lista_mascotas); 32 | 33 | conn=new ConexionSQLiteHelper(getApplicationContext(),"bd_usuarios",null,1); 34 | 35 | listViewMascota= (ListView) findViewById(R.id.listViewMascotas); 36 | 37 | consultarListaPersonas(); 38 | 39 | ArrayAdapter adaptador=new ArrayAdapter(this,android.R.layout.simple_list_item_1,listaInformacion); 40 | listViewMascota.setAdapter(adaptador); 41 | 42 | listViewMascota.setOnItemClickListener(new AdapterView.OnItemClickListener() { 43 | @Override 44 | public void onItemClick(AdapterView adapterView, View view, int pos, long l) { 45 | 46 | Mascota mascota=listaMascotas.get(pos); 47 | 48 | Intent intent=new Intent(ListaMascotasActivity.this,DetalleMascotaActivity.class); 49 | 50 | Bundle bundle=new Bundle(); 51 | bundle.putSerializable("mascota",mascota); 52 | 53 | intent.putExtras(bundle); 54 | startActivity(intent); 55 | 56 | } 57 | }); 58 | 59 | } 60 | 61 | private void consultarListaPersonas() { 62 | SQLiteDatabase db=conn.getReadableDatabase(); 63 | 64 | Mascota mascota=null; 65 | listaMascotas=new ArrayList(); 66 | //select * from usuarios 67 | Cursor cursor=db.rawQuery("SELECT * FROM "+ Utilidades.TABLA_MASCOTA,null); 68 | 69 | while (cursor.moveToNext()){ 70 | mascota=new Mascota(); 71 | mascota.setIdMascota(cursor.getInt(0)); 72 | mascota.setNombreMascota(cursor.getString(1)); 73 | mascota.setRaza(cursor.getString(2)); 74 | mascota.setIdDuenio(cursor.getInt(3)); 75 | 76 | 77 | listaMascotas.add(mascota); 78 | } 79 | obtenerLista(); 80 | } 81 | 82 | private void obtenerLista() { 83 | listaInformacion=new ArrayList(); 84 | 85 | for (int i=0; i listaUsuario; 19 | RecyclerView recyclerViewUsuarios; 20 | 21 | ConexionSQLiteHelper conn; 22 | 23 | @Override 24 | protected void onCreate(Bundle savedInstanceState) { 25 | super.onCreate(savedInstanceState); 26 | setContentView(R.layout.activity_lista_personas_recycler); 27 | 28 | conn=new ConexionSQLiteHelper(getApplicationContext(),"bd_usuarios",null,1); 29 | 30 | listaUsuario=new ArrayList<>(); 31 | 32 | recyclerViewUsuarios= (RecyclerView) findViewById(R.id.recyclerPersonas); 33 | recyclerViewUsuarios.setLayoutManager(new LinearLayoutManager(this)); 34 | 35 | consultarListaPersonas(); 36 | 37 | ListaPersonasAdapter adapter=new ListaPersonasAdapter(listaUsuario); 38 | recyclerViewUsuarios.setAdapter(adapter); 39 | 40 | } 41 | 42 | private void consultarListaPersonas() { 43 | SQLiteDatabase db=conn.getReadableDatabase(); 44 | 45 | Usuario usuario=null; 46 | // listaUsuarios=new ArrayList(); 47 | //select * from usuarios 48 | Cursor cursor=db.rawQuery("SELECT * FROM "+ Utilidades.TABLA_USUARIO,null); 49 | 50 | while (cursor.moveToNext()){ 51 | usuario=new Usuario(); 52 | usuario.setId(cursor.getInt(0)); 53 | usuario.setNombre(cursor.getString(1)); 54 | usuario.setTelefono(cursor.getString(2)); 55 | 56 | listaUsuario.add(usuario); 57 | } 58 | } 59 | 60 | private void llenarListaUsuarios() { 61 | listaUsuario.add(new Usuario(1,"Cristian","548526")); 62 | listaUsuario.add(new Usuario(1,"Cristian","548526")); 63 | listaUsuario.add(new Usuario(1,"Cristian","548526")); 64 | listaUsuario.add(new Usuario(1,"Cristian","548526")); 65 | listaUsuario.add(new Usuario(1,"Cristian","548526")); 66 | listaUsuario.add(new Usuario(1,"Cristian","548526")); 67 | listaUsuario.add(new Usuario(1,"Cristian","548526")); 68 | } 69 | } 70 | -------------------------------------------------------------------------------- /app/src/main/java/co/quindio/sena/ejemplosqlite/MainActivity.java: -------------------------------------------------------------------------------- 1 | package co.quindio.sena.ejemplosqlite; 2 | 3 | import android.content.ContentValues; 4 | import android.content.Intent; 5 | import android.database.sqlite.SQLiteDatabase; 6 | import android.support.v7.app.AppCompatActivity; 7 | import android.os.Bundle; 8 | import android.view.View; 9 | import android.widget.Toast; 10 | 11 | public class MainActivity extends AppCompatActivity { 12 | 13 | @Override 14 | protected void onCreate(Bundle savedInstanceState) { 15 | super.onCreate(savedInstanceState); 16 | setContentView(R.layout.activity_main); 17 | 18 | ConexionSQLiteHelper conn=new ConexionSQLiteHelper(this,"bd_usuarios",null,1); 19 | } 20 | 21 | public void onClick(View view) { 22 | Intent miIntent=null; 23 | switch (view.getId()){ 24 | case R.id.btnOpcionRegistro: 25 | miIntent=new Intent(MainActivity.this,RegistroUsuariosActivity.class); 26 | break; 27 | case R.id.btnRegistroMascota: 28 | miIntent=new Intent(MainActivity.this,RegistroMascotaActivity.class); 29 | break; 30 | case R.id.btnConsultaIndividual: 31 | miIntent=new Intent(MainActivity.this,ConsultarUsuariosActivity.class); 32 | break; 33 | case R.id.btnConsultaSpinner: 34 | miIntent=new Intent(MainActivity.this,ConsultaComboActivity.class); 35 | break; 36 | case R.id.btnConsultaLista: 37 | miIntent=new Intent(MainActivity.this,ConsultarListaListViewActivity.class); 38 | break; 39 | case R.id.btnConsultaListaMascota: 40 | miIntent=new Intent(MainActivity.this,ListaMascotasActivity.class); 41 | break; 42 | case R.id.btnConsultaListaPersonasRecycler: 43 | miIntent=new Intent(MainActivity.this,ListaPersonasRecycler.class); 44 | break; 45 | } 46 | if (miIntent!=null){ 47 | startActivity(miIntent); 48 | } 49 | 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /app/src/main/java/co/quindio/sena/ejemplosqlite/RegistroMascotaActivity.java: -------------------------------------------------------------------------------- 1 | package co.quindio.sena.ejemplosqlite; 2 | 3 | import android.content.ContentValues; 4 | import android.database.Cursor; 5 | import android.database.sqlite.SQLiteDatabase; 6 | import android.support.v7.app.AppCompatActivity; 7 | import android.os.Bundle; 8 | import android.util.Log; 9 | import android.view.View; 10 | import android.widget.AdapterView; 11 | import android.widget.ArrayAdapter; 12 | import android.widget.EditText; 13 | import android.widget.Spinner; 14 | import android.widget.TextView; 15 | import android.widget.Toast; 16 | 17 | import java.util.ArrayList; 18 | 19 | import co.quindio.sena.ejemplosqlite.entidades.Usuario; 20 | import co.quindio.sena.ejemplosqlite.utilidades.Utilidades; 21 | 22 | public class RegistroMascotaActivity extends AppCompatActivity { 23 | 24 | EditText razaMascota,nombreMascota; 25 | Spinner comboDuenio; 26 | 27 | ArrayList listaPersonas; 28 | ArrayList personasList; 29 | 30 | ConexionSQLiteHelper conn; 31 | 32 | @Override 33 | protected void onCreate(Bundle savedInstanceState) { 34 | super.onCreate(savedInstanceState); 35 | setContentView(R.layout.activity_registro_mascota); 36 | 37 | razaMascota= (EditText) findViewById(R.id.campoRaza); 38 | nombreMascota= (EditText) findViewById(R.id.campoNombreMascota); 39 | comboDuenio= (Spinner) findViewById(R.id.comboDuenioMascota); 40 | 41 | conn=new ConexionSQLiteHelper(getApplicationContext(),"bd_usuarios",null,1); 42 | 43 | consultarListaPersonas(); 44 | 45 | ArrayAdapter adaptador=new ArrayAdapter 46 | (this,android.R.layout.simple_spinner_item,listaPersonas); 47 | 48 | comboDuenio.setAdapter(adaptador); 49 | 50 | 51 | 52 | comboDuenio.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 53 | @Override 54 | public void onItemSelected(AdapterView parent, View view, int position, long idl) { 55 | 56 | } 57 | 58 | @Override 59 | public void onNothingSelected(AdapterView adapterView) { 60 | 61 | } 62 | }); 63 | 64 | } 65 | 66 | private void registrarMascota() { 67 | 68 | SQLiteDatabase db=conn.getWritableDatabase(); 69 | 70 | ContentValues values=new ContentValues(); 71 | values.put(Utilidades.CAMPO_NOMBRE_MASCOTA,nombreMascota.getText().toString()); 72 | values.put(Utilidades.CAMPO_RAZA_MASCOTA,razaMascota.getText().toString()); 73 | 74 | int idCombo= (int) comboDuenio.getSelectedItemId(); 75 | /** 76 | * Valida la seleccion del combo de dueños, si el usuario elige "seleccione" entonces 77 | * se retorna el id 0 ya que la palabra "seleccione" se encuentra en la pos 0 del combo, 78 | * sinó entonces se retorna la posicion del combo para consultar el usuario almacenado en la lista 79 | */ 80 | if (idCombo!=0){ 81 | Log.i("TAMAÑO",personasList.size()+""); 82 | Log.i("id combo",idCombo+""); 83 | Log.i("id combo - 1",(idCombo-1)+"");//se resta 1 ya que se quiere obtener la posicion de la lista, no del combo 84 | int idDuenio=personasList.get(idCombo-1).getId(); 85 | Log.i("id DUEÑO",idDuenio+""); 86 | 87 | values.put(Utilidades.CAMPO_ID_DUENIO,idDuenio); 88 | 89 | Long idResultante=db.insert(Utilidades.TABLA_MASCOTA,Utilidades.CAMPO_ID_MASCOTA,values); 90 | 91 | Toast.makeText(getApplicationContext(),"Id Registro: "+idResultante,Toast.LENGTH_SHORT).show(); 92 | db.close(); 93 | 94 | }else{ 95 | Toast.makeText(getApplicationContext(),"Debe seleccionar un Dueño",Toast.LENGTH_LONG).show(); 96 | } 97 | 98 | 99 | } 100 | 101 | private void consultarListaPersonas() { 102 | SQLiteDatabase db=conn.getReadableDatabase(); 103 | 104 | Usuario persona=null; 105 | personasList =new ArrayList(); 106 | //select * from usuarios 107 | Cursor cursor=db.rawQuery("SELECT * FROM "+ Utilidades.TABLA_USUARIO,null); 108 | 109 | while (cursor.moveToNext()){ 110 | persona=new Usuario(); 111 | persona.setId(cursor.getInt(0)); 112 | persona.setNombre(cursor.getString(1)); 113 | persona.setTelefono(cursor.getString(2)); 114 | 115 | Log.i("id",persona.getId().toString()); 116 | Log.i("Nombre",persona.getNombre()); 117 | Log.i("Tel",persona.getTelefono()); 118 | 119 | personasList.add(persona); 120 | 121 | } 122 | obtenerLista(); 123 | } 124 | 125 | private void obtenerLista() { 126 | listaPersonas=new ArrayList(); 127 | listaPersonas.add("Seleccione"); 128 | 129 | for(int i=0;i { 19 | 20 | ArrayList listaUsuario; 21 | 22 | public ListaPersonasAdapter(ArrayList listaUsuario) { 23 | this.listaUsuario = listaUsuario; 24 | } 25 | 26 | @Override 27 | public PersonasViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 28 | View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_item_personas,null,false); 29 | return new PersonasViewHolder(view); 30 | } 31 | 32 | @Override 33 | public void onBindViewHolder(PersonasViewHolder holder, int position) { 34 | holder.documento.setText(listaUsuario.get(position).getId().toString()); 35 | holder.nombre.setText(listaUsuario.get(position).getNombre()); 36 | holder.telefono.setText(listaUsuario.get(position).getTelefono()); 37 | } 38 | 39 | @Override 40 | public int getItemCount() { 41 | return listaUsuario.size(); 42 | } 43 | 44 | public class PersonasViewHolder extends RecyclerView.ViewHolder { 45 | 46 | TextView documento,nombre,telefono; 47 | 48 | public PersonasViewHolder(View itemView) { 49 | super(itemView); 50 | documento = (TextView) itemView.findViewById(R.id.textDocumento); 51 | nombre = (TextView) itemView.findViewById(R.id.textNombre); 52 | telefono = (TextView) itemView.findViewById(R.id.textTelefono); 53 | } 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /app/src/main/java/co/quindio/sena/ejemplosqlite/entidades/Mascota.java: -------------------------------------------------------------------------------- 1 | package co.quindio.sena.ejemplosqlite.entidades; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * Created by CHENAO on 17/06/2017. 7 | */ 8 | 9 | public class Mascota implements Serializable { 10 | 11 | private Integer idDuenio; 12 | private Integer idMascota; 13 | private String nombreMascota; 14 | private String raza; 15 | 16 | public Mascota(){ 17 | 18 | } 19 | 20 | public Mascota(Integer idDuenio, Integer idMascota, String nombreMascota, String raza) { 21 | this.idDuenio = idDuenio; 22 | this.idMascota = idMascota; 23 | this.nombreMascota = nombreMascota; 24 | this.raza = raza; 25 | } 26 | 27 | public Integer getIdDuenio() { 28 | return idDuenio; 29 | } 30 | 31 | public void setIdDuenio(Integer idDuenio) { 32 | this.idDuenio = idDuenio; 33 | } 34 | 35 | public Integer getIdMascota() { 36 | return idMascota; 37 | } 38 | 39 | public void setIdMascota(Integer idMascota) { 40 | this.idMascota = idMascota; 41 | } 42 | 43 | public String getNombreMascota() { 44 | return nombreMascota; 45 | } 46 | 47 | public void setNombreMascota(String nombreMascota) { 48 | this.nombreMascota = nombreMascota; 49 | } 50 | 51 | public String getRaza() { 52 | return raza; 53 | } 54 | 55 | public void setRaza(String raza) { 56 | this.raza = raza; 57 | } 58 | } 59 | -------------------------------------------------------------------------------- /app/src/main/java/co/quindio/sena/ejemplosqlite/entidades/Usuario.java: -------------------------------------------------------------------------------- 1 | package co.quindio.sena.ejemplosqlite.entidades; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * Created by CHENAO on 7/05/2017. 7 | */ 8 | 9 | public class Usuario implements Serializable{ 10 | 11 | private Integer id; 12 | private String nombre; 13 | private String telefono; 14 | 15 | public Usuario(Integer id, String nombre, String telefono) { 16 | this.id = id; 17 | this.nombre = nombre; 18 | this.telefono = telefono; 19 | } 20 | 21 | public Usuario(){ 22 | 23 | } 24 | 25 | public Integer getId() { 26 | return id; 27 | } 28 | 29 | public void setId(Integer id) { 30 | this.id = id; 31 | } 32 | 33 | public String getNombre() { 34 | return nombre; 35 | } 36 | 37 | public void setNombre(String nombre) { 38 | this.nombre = nombre; 39 | } 40 | 41 | public String getTelefono() { 42 | return telefono; 43 | } 44 | 45 | public void setTelefono(String telefono) { 46 | this.telefono = telefono; 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /app/src/main/java/co/quindio/sena/ejemplosqlite/utilidades/Utilidades.java: -------------------------------------------------------------------------------- 1 | package co.quindio.sena.ejemplosqlite.utilidades; 2 | 3 | /** 4 | * Created by CHENAO on 7/05/2017. 5 | */ 6 | 7 | public class Utilidades { 8 | 9 | //Constantes campos tabla usuario 10 | public static final String TABLA_USUARIO="usuario"; 11 | public static final String CAMPO_ID="id"; 12 | public static final String CAMPO_NOMBRE="nombre"; 13 | public static final String CAMPO_TELEFONO="telefono"; 14 | 15 | public static final String CREAR_TABLA_USUARIO="CREATE TABLE " + 16 | ""+TABLA_USUARIO+" ("+CAMPO_ID+" " + 17 | "INTEGER, "+CAMPO_NOMBRE+" TEXT,"+CAMPO_TELEFONO+" TEXT)"; 18 | 19 | //Constantes campos tabla mascota 20 | public static final String TABLA_MASCOTA="mascota"; 21 | public static final String CAMPO_ID_MASCOTA="id_mascota"; 22 | public static final String CAMPO_NOMBRE_MASCOTA="nombre_mascota"; 23 | public static final String CAMPO_RAZA_MASCOTA="raza_mascota"; 24 | public static final String CAMPO_ID_DUENIO="id_duenio"; 25 | 26 | public static final String CREAR_TABLA_MASCOTA="CREATE TABLE " + 27 | ""+TABLA_MASCOTA+" ("+CAMPO_ID_MASCOTA+" INTEGER PRIMARY KEY AUTOINCREMENT, " 28 | +CAMPO_NOMBRE_MASCOTA+" TEXT, "+CAMPO_RAZA_MASCOTA+" TEXT,"+CAMPO_ID_DUENIO+" INTEGER)"; 29 | 30 | } 31 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/flech.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chenaoh/EjemploSQLite/1e363c876e98f373bf1d2c77d4105f49dccac209/app/src/main/res/drawable/flech.png -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_consulta_combo.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | 14 | 21 | 22 | 26 | 27 | 32 | 33 | 41 | 42 | 54 | 55 | 56 | 66 | 67 | 77 | 78 | 88 | 89 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_consultar_lista_list_view.xml: -------------------------------------------------------------------------------- 1 | 2 | 12 | 13 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_consultar_usuarios.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | 14 | 19 | 20 | 26 | 27 |