University - ISolutions

Programación Orientada a Objetos (Tower defense - kingdom rush)

Moderator: julianmartinez16

User avatar
JuanZuluaga02
Posts: 34
Joined: Tue Jan 22, 2019 12:12 pm

Re: University - ISolutions

Post by JuanZuluaga02 » Wed Apr 03, 2019 5:16 pm

Sprint # 9 - Semana 11
Fecha de Inicio 28/03/2019
Fecha de Finalización 4/03/2019


Actividad #9

Realización de Navegation Drawer


Tarea Encargado Dificultad
  • 1. Realización de XML del Navegation Drawer
    2. Realización de actividad para Navegation Drawer


Seguimiento del martes:
Fecha: 2/04/2019

1. ¿ Qué se ha hecho ?

Se implementó la parte gráfica del Navegation Drawer.

Navegation Drawer

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:openDrawer="start">

    <include
        layout="@layout/app_bar_main"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <android.support.design.widget.NavigationView
        android:id="@+id/nav_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:fitsSystemWindows="true"
        app:headerLayout="@layout/nav_header_main"
        app:menu="@menu/activity_main_drawer" />

</android.support.v4.widget.DrawerLayout>


Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="@dimen/nav_header_height"
    android:background="@drawable/solutions"
    android:gravity="bottom"
    android:orientation="vertical"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:theme="@style/ThemeOverlay.AppCompat.Dark">


</LinearLayout>

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    tools:context=".Navegation"
    tools:showIn="@layout/app_bar_main">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        >

        <ImageView
            android:layout_marginTop="20dp"
            android:layout_width="300dp"
            android:layout_height="300dp"
            android:layout_marginLeft="50dp"
            android:src="@drawable/foo"

            />


        <TextView
            android:layout_marginTop="20dp"
            android:layout_width="match_parent"
            android:layout_height="100dp"
            android:layout_marginLeft="20dp"
            android:textSize="30dp"
            android:text="Aplicación desarrollada por:"
            android:textColor="@color/colorPrimaryDark"/>

        <TextView

            android:layout_width="match_parent"
            android:layout_marginLeft="20dp"
            android:layout_height="50dp"
            android:textSize="20dp"
            android:text="Juan Manuel Zuluaga"
            />
        <TextView
            android:layout_marginLeft="20dp"
            android:layout_width="match_parent"
            android:layout_height="100dp"
            android:textSize="20dp"
            android:text="Estudiante de Ingeniería de Sistemas e Informática"
            />

    </LinearLayout>


</android.support

Code: Select all

?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    tools:showIn="navigation_view">

    <group android:checkableBehavior="single">
        <item
            android:id="@+id/agenda"
            android:icon="@drawable/librito"
            android:title="Agenda" />
        <item
            android:id="@+id/asignaturas"
            android:icon="@drawable/asignaturas"
            android:title="Asignatuas" />
        <item
            android:id="@+id/profesores"
            android:icon="@drawable/agregar"
            android:title="Profesores" />
        <item
            android:id="@+id/calculadora"
            android:icon="@drawable/calculo"
            android:title="Calculadora" />
    </group>

    <item android:title="Contactanos">
        <menu>
            <item
                android:id="@+id/contactanos"
                android:icon="@drawable/ic_menu_share"
                android:title="Desarrolladores" />

        </menu>
    </item>

</menu>
Image

2. ¿ Qué se va a hacer ?

Se implementará la actividad respectiva necesaria para realización del navegation drawer.

3. ¿Qué dificultades hemos tenido?

La clase Asignaturas genera problemas a la hora de enlazar el cálculo de notas con la inserción en la base de datos.
Juan Manuel Zuluaga
POO1

User avatar
JuanZuluaga02
Posts: 34
Joined: Tue Jan 22, 2019 12:12 pm

Re: University - ISolutions

Post by JuanZuluaga02 » Thu Apr 04, 2019 11:54 pm

Seguimiento del Jueves:
Fecha: 4/04/2019

1. ¿ Qué se ha hecho ?

Se implementó la de progamación del Navegation Drawer.

Actividad Navegation Drawer

Code: Select all

package com.example.university4;

import android.content.Intent;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.view.View;
import android.support.design.widget.NavigationView;
import android.support.v4.view.GravityCompat;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBarDrawerToggle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;

public class Navegation extends AppCompatActivity
        implements NavigationView.OnNavigationItemSelectedListener {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.navegation);
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);


        FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
        fab.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
                        .setAction("Action", null).show();
            }
        });

        DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
        ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
                this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
        drawer.addDrawerListener(toggle);
        toggle.syncState();

        NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
        navigationView.setNavigationItemSelectedListener(this);
    }

    @Override
    public void onBackPressed() {
        DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
        if (drawer.isDrawerOpen(GravityCompat.START)) {
            drawer.closeDrawer(GravityCompat.START);
        } else {
            super.onBackPressed();
        }
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }

        return super.onOptionsItemSelected(item);
    }

    @SuppressWarnings("StatementWithEmptyBody")
    @Override
    public boolean onNavigationItemSelected(MenuItem item) {
        // Handle navigation view item clicks here.
        int id = item.getItemId();

        if (id == R.id.agenda) {
            Intent intent = new Intent(Navegation.this,Agenda.class);
            startActivity(intent);

        } else if (id == R.id.asignaturas) {
            Intent intent2 = new Intent(Navegation.this,Asignaturas.class);
            startActivity(intent2);

        } else if (id == R.id.profesores) {
            Intent intent3 = new Intent(Navegation.this,Profesores.class);
            startActivity(intent3);

        } else if (id == R.id.calculadora) {
            Intent intent4 = new Intent(Navegation.this,Calculo.class);
            startActivity(intent4);

        } else if (id == R.id.contactanos) {
            Intent intent5 = new Intent(Navegation.this,Desarrolladores.class);
            startActivity(intent5);


            DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
            drawer.closeDrawer(GravityCompat.START);
            return true;
        }
        return true;
    }
}





2. ¿ Qué se va a hacer ?

Se mejorarán las funcionalidades ya presentes en la app, haciendo añadidos. Además de pruebas

3. ¿Qué dificultades hemos tenido?

La clase Asignaturas genera problemas a la hora de enlazar el cálculo de notas con la inserción en la base de datos.
Juan Manuel Zuluaga
POO1

User avatar
JuanZuluaga02
Posts: 34
Joined: Tue Jan 22, 2019 12:12 pm

Re: University - ISolutions

Post by JuanZuluaga02 » Wed Apr 10, 2019 9:07 pm

Sprint # 10 - Semana 12
Fecha de Inicio 4/04/2019
Fecha de Finalización 11/04/2019


Actividad #10

Corrección errores en la actividad de Asignaturas


Tarea Dificultad
  • 1. XML de la actividad 3
    2. Actividad en Java 4


Seguimiento del martes:
Fecha: 9/04/2019

1. ¿ Qué se ha hecho ?

Se implementó la parte gráfica de la clase.

XML Asignaturas

Image

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".Asignaturas">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        tools:layout_editor_absoluteX="0dp"
        tools:layout_editor_absoluteY="82dp">


        <EditText
            android:id="@+id/cam1"
            android:layout_width="300dp"
            android:layout_height="50dp"
            android:layout_marginLeft="50dp"
            android:layout_marginTop="10dp"
            android:hint="Materia" />

        <EditText
            android:id="@+id/cam2"
            android:layout_width="300dp"
            android:layout_height="60dp"
            android:layout_marginLeft="50dp"
            android:layout_marginTop="10dp"
            android:layout_marginBottom="10dp"
            android:hint="Nota" />


        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="100dp"
            android:orientation="horizontal">

            <ImageButton
                android:id="@+id/calcula"
                android:layout_width="80dp"
                android:layout_height="50dp"
                android:layout_marginLeft="40dp"
                android:background="@drawable/add" />

            <TextView
                android:layout_width="200dp"
                android:layout_height="60dp"
                android:text="Agregar notas"
                android:textSize="20dp" />





        </LinearLayout>


        <Button
            android:id="@+id/datos"
            android:layout_width="150dp"
            android:layout_height="60dp"
            android:layout_marginLeft="130dp"
            android:layout_marginTop="-30dp"
            android:fontFamily="serif"
            android:text="AGREGAR DATOS"
           />



        <ListView
            android:id="@+id/listic"
            android:layout_width="match_parent"
            android:layout_height="match_parent"></ListView>


    </LinearLayout>




</android.support.constraint.ConstraintLayout>



Actividad de Asignaturas

Code: Select all

package com.example.university4;

import android.content.Intent;
import android.database.Cursor;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.Gravity;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ListView;
import android.widget.Toast;

import java.util.ArrayList;
import java.util.List;

public class Asignaturas extends AppCompatActivity {

    ListView list;
    EditText edit1,edit2;
    Button botton2;
    ImageButton botton;
    List<String> item;
    String getTitle;
    String nota;
    AdaptadorA DB3;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_asignaturas);
       // Bundle bundle = this.getIntent().getExtras();




        list = (ListView)findViewById(R.id.listic);
        edit1 = (EditText)findViewById(R.id.cam1);
        edit2 = (EditText)findViewById(R.id.cam2);
        botton = (ImageButton) findViewById(R.id.calcula);
        botton2 = (Button)findViewById(R.id.datos);

        showNotes();

        list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                getTitle = (String) list.getItemAtPosition(position);
                verNota();

            }
        });

        botton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(Asignaturas.this, AgregarNotas.class);
                startActivity(intent);
            }
        });

       botton2.setOnClickListener(new View.OnClickListener() {
           @Override
           public void onClick(View v) {


               addUpdateNotes();

               showNotes();
           }
       });

    }


    private void addUpdateNotes(){
        DB3 = new AdaptadorA(this);
        String materia,msj;
        materia = edit1.getText().toString();

        nota = edit2.getText().toString();

        if(materia.equals("")){
            msj = "Ingrese el nombre la materia";
            edit1.requestFocus();
            Mensaje(msj);
        }else{
            if(nota.equals("")){
                msj = "no ha ingresado la nota";
                edit2.requestFocus();
                Mensaje(msj);
            }else{
                Cursor c = DB3.getNote(materia);
                getTitle = "";
                //Se asegura de que existe al menos una condición
                if(c.moveToFirst()){
                    //Se recorre el cursor hasta que no hayan registros
                    do{
                        getTitle = c.getString(1); //Las columnas cuentan desde 0
                    }while (c.moveToNext());
                }
                if(getTitle.equals(materia)){
                    edit1.requestFocus();
                    msj = "La materia ya ha sido ingresada";
                }else{

                    DB3.addNotes(materia,nota);
                    msj = "Datos agregados";
                    Toast.makeText(this, msj , Toast.LENGTH_SHORT).show();
                    actividad(materia,nota);
                }
            }
        }

    }

    public void Mensaje(String msj){
        Toast toast = Toast.makeText(this, msj,Toast.LENGTH_SHORT);
        toast.setGravity(Gravity.CENTER_VERTICAL,0,0);
        toast.show();
    }

    public void showNotes(){
        DB3 = new AdaptadorA(this);
        Cursor c = DB3.getNotes();
        item = new ArrayList<String>();
        String materia = "";
        //Nos aseguramos de que existe al menos un registro
        if(c.moveToFirst() == false){
            Toast.makeText(this, "No hay materias ingresadas hasta ahora",Toast.LENGTH_SHORT).show();
        }else{
            do{
                materia = c.getString(1);
                item.add(materia);

            }while(c.moveToNext());
        }

        ArrayAdapter<String> adaptador = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,item);
        list.setAdapter(adaptador);

    }

    public String getNote(){


        DB3 = new AdaptadorA(this);
        Cursor c = DB3.getNote(getTitle);
        if(c.moveToFirst() == true){

            do{
                nota = c.getString(2);
                item.add(nota);

            }while(c.moveToNext());
        }
        return nota;
    }


    public void actividad(String materia,String nota){
        Intent intent = new Intent(Asignaturas.this, VisualizarNota.class);
        intent.putExtra("materia",materia);
        intent.putExtra("nota",nota);
        startActivity(intent);
    }


    public void verNota(){


        String materia;


        nota = getNote();

        materia = getTitle;
        //Toast.makeText(this ,content,Toast.LENGTH_LONG).show();
        actividad(materia,nota);





    }









}
2. ¿ Qué se va a hacer ?

Se realizará mejoras en la clase Profesores.

3. ¿Qué dificultades hemos tenido?

Hasta ahora no hay ningún inconveniente.
Last edited by JuanZuluaga02 on Thu Apr 11, 2019 9:13 pm, edited 2 times in total.
Juan Manuel Zuluaga
POO1

User avatar
xacarana
Site Admin
Posts: 1148
Joined: Fri Jan 15, 2016 6:13 pm

Re: University - ISolutions

Post by xacarana » Thu Apr 11, 2019 1:13 pm

Image

Necesitamos ver las imagenes del avance dle código, :!: recuerda publicar el día de la clase.
Andrés Bedoya Tobón
Profesor
"I only smile in the dark, I only smile when it's complicated" Raybiez

User avatar
JuanZuluaga02
Posts: 34
Joined: Tue Jan 22, 2019 12:12 pm

Re: University - ISolutions

Post by JuanZuluaga02 » Thu Apr 11, 2019 9:13 pm

Seguimiento del Jueves:
Fecha: 11/04/2019

1. ¿ Qué se ha hecho ?

Se implementó la parte gráfica y de programación de la Clase Profesor.

XML Asignaturas

Image

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".VerProfesores">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">

        <TextView
            android:id="@+id/nom"
            android:layout_width="match_parent"
            android:layout_height="100dp"
            android:text="Profesor"
            android:textSize="30dp"
            android:layout_marginLeft="100dp"
            android:textColor="@color/colorPrimaryDark"/>

        <TextView
            android:id="@+id/mat"
            android:layout_width="match_parent"
            android:layout_height="100dp"
            android:text="Materia"
            android:layout_marginLeft="20dp"
            android:textSize="30dp"
           />
        <TextView
            android:id="@+id/tel"
            android:layout_width="match_parent"
            android:layout_height="100dp"
            android:text="Telefono"
            android:layout_marginLeft="20dp"
            android:textSize="30dp"
            />


    </LinearLayout>

</android.support.constraint.ConstraintLayout>



Actividad de Profesores

Code: Select all

package com.example.university4;

import android.content.Intent;
import android.database.Cursor;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.Gravity;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;

import java.util.ArrayList;
import java.util.List;

public class Profesores extends AppCompatActivity {

    ListView listap;
    EditText edit1,edit2,edit3;
    String getTitle;
    List<String> item = null;
    AdaptadorP DB2;
    Button bot2;
    TextView textico;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_profesores);
        listap = (ListView)findViewById(R.id.listap);
        edit1 = (EditText)findViewById(R.id.campo1);
        edit2 = (EditText)findViewById(R.id.campo2);
        edit3 = (EditText)findViewById(R.id.campo3);
        bot2 =(Button)findViewById(R.id.agregar);
        textico =(TextView)findViewById(R.id.textico);

        showNotes();


        listap.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                getTitle = (String) listap.getItemAtPosition(position);
                verNota();

            }
        });

        bot2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                addUpdateNotes();
                showNotes();
            }
        });

    }

    private void addUpdateNotes(){
        DB2 = new AdaptadorP(this);
        String nombre, telefono,materia,msj;
        nombre = edit1.getText().toString();
         materia= edit2.getText().toString();
        telefono= edit3.getText().toString();
        if(nombre.equals("")){
            msj = "Ingrese el nombre";
            edit1.requestFocus();
            Mensaje(msj);
        }else{
            if(materia.equals("")){
                msj = "Ingrese la materia";
                edit2.requestFocus();
                Mensaje(msj);

            }else{
                if(telefono.equals("")){
                    msj = "Ingrese el telefono";
                    edit2.requestFocus();
                    Mensaje(msj);

                }else{




                    Cursor c = DB2.getProfe(nombre);
                    getTitle = "";
                    //Se asegura de que existe al menos una condición
                    if(c.moveToFirst()){
                        //Se recorre el cursor hasta que no hayan registros
                        do{
                            getTitle = c.getString(1); //Las columnas cuentan desde 0
                        }while (c.moveToNext());
                    }
                    if(getTitle.equals(nombre)){
                        edit1.requestFocus();
                        msj = "El profesor ya existe";
                    }else{
                        DB2.addProfe(nombre,materia,telefono);
                        msj = "Datos agregados";
                        Toast.makeText(this, msj , Toast.LENGTH_SHORT).show();
                        //actividad(title,content);
                    }

                }

            }
        }

    }

    public void Mensaje(String msj){
        Toast toast = Toast.makeText(this, msj,Toast.LENGTH_SHORT);
        toast.setGravity(Gravity.CENTER_VERTICAL,0,0);
        toast.show();
    }

    public void showNotes(){
        DB2 = new AdaptadorP(this);
        Cursor c = DB2.getProfes();
        item = new ArrayList<String>();
        String nombre = "";
        String tel = "";
        //Nos aseguramos de que existe al menos un registro
        if(c.moveToFirst() == false){
            textico.setText("No hay profes añadidos");
        }else{
            do{
                nombre = c.getString(1);
                item.add(nombre);


            }while(c.moveToNext());
        }

        ArrayAdapter<String> adaptador = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,item);

        listap.setAdapter(adaptador);

    }

    public String getNote(){
        String type = "";
        String materia = "";

        DB2 = new AdaptadorP(this);
        Cursor c = DB2.getProfe(getTitle);
        if(c.moveToFirst() == true){

            do{
                materia = c.getString(2);
                item.add(materia);

            }while(c.moveToNext());
        }
        return materia;
    }


    public String getNote2(){
        String type = "";
        String telefono = "";

        DB2 = new AdaptadorP(this);
        Cursor c = DB2.getProfe(getTitle);
        if(c.moveToFirst() == true){

            do{
                telefono = c.getString(3);
                item.add(telefono);

            }while(c.moveToNext());
        }
        return telefono;
    }


    public void actividad(String nombre,String materia,String telefono){
        Intent intent = new Intent(Profesores.this, VerProfesores.class);
        intent.putExtra("nombre",nombre);
        intent.putExtra("materia",materia);
        intent.putExtra("telefono",telefono);
        startActivity(intent);
    }


    public void verNota(){

        String nombre,materia,telefono;



        materia = getNote();
        telefono = getNote2();
        nombre = getTitle;
        //Toast.makeText(this ,telefono,Toast.LENGTH_LONG).show();
        actividad(nombre,materia,telefono);





    }
}

2. ¿ Qué se va a hacer ?

Se implementará la opción para eliminar datos de la base de datos.

3. ¿Qué dificultades hemos tenido?

Hasta ahora no hay ningún inconveniente.
Juan Manuel Zuluaga
POO1

User avatar
JuanZuluaga02
Posts: 34
Joined: Tue Jan 22, 2019 12:12 pm

Re: University - ISolutions

Post by JuanZuluaga02 » Tue Apr 23, 2019 10:04 pm

Sprint # 11 - Semana 13
Fecha de Inicio 18/04/2019
Fecha de Finalización 25/04/2019


Actividad #11

Creación del diagrama de clases del proyecto e Implementación de método de Edición y Eliminación de notas en la clase DBManager


Tarea Dificultad
  • 1. Creación del diagrama de clases 3
    2. Función para la implementación del método de edición de notas en la clase. 4
    3. Función para la implementación del método de eliminación de notas en la clase. 4


Seguimiento del martes:
Fecha: 23/04/2019

1. ¿ Qué se ha hecho ?

Se creó el Diagrama de clases del proyecto y se implementó el método de edición en el DBManager primero antes de ser usado en la actividad de Agenda.

Diagrama de clases del proyecto (Boceto)

Image



Edición de Notas en DBManager

Code: Select all


  public void UpdateNote(String title,String content,String condition){
        String args[]={condition};
        ContentValues valores = new ContentValues();
        valores.put(TITLE,title);
        valores.put(CONTENT,content);
        this.getWritableDatabase().update(TABLE,valores,TITLE + "=?",args);
    }
2. ¿ Qué se va a hacer ?

Se realizará el método de eliminación en el DBManager.

3. ¿Qué dificultades hemos tenido?

El Alert Diálogo usado como menú para eliminar o editar, hace que la aplicación se detenga. Este será reemplazado por algo más eficiente.
Last edited by JuanZuluaga02 on Thu May 09, 2019 12:13 pm, edited 1 time in total.
Juan Manuel Zuluaga
POO1

User avatar
JuanZuluaga02
Posts: 34
Joined: Tue Jan 22, 2019 12:12 pm

Re: University - ISolutions

Post by JuanZuluaga02 » Fri Apr 26, 2019 2:56 pm

Seguimiento del jueves:
Fecha: 25/04/2019

1. ¿ Qué se ha hecho ?

Se implementó el método de eliminación en el DBManager primero antes de ser usado en la actividad de Agenda.

Image

Eliminación de TODAS las notas DBManager

Code: Select all

  public void DeleteNotes(){
        this.getWritableDatabase().delete(TABLE,null,null);
    }




Eliminación de una nota en DBManager

Code: Select all


 
    public void deleteNote(String condition){
        String args[]={condition};
        this.getWritableDatabase().delete(TABLE,TITLE + "=?",args);
    }
2. ¿ Qué se va a hacer ?

Se realizará el método para ligar la base de datos con la clase Agenda

3. ¿Qué dificultades hemos tenido?

El Alert Diálogo usado como menú para eliminar o editar, hace que la aplicación se detenga. Este será reemplazado por algo más eficiente.
Juan Manuel Zuluaga
POO1

User avatar
JuanZuluaga02
Posts: 34
Joined: Tue Jan 22, 2019 12:12 pm

Re: University - ISolutions

Post by JuanZuluaga02 » Wed May 01, 2019 10:23 pm

Sprint # 12 - Semana 14
Fecha de Inicio 25/04/2019
Fecha de Finalización 2/05/2019


Actividad #12

Implementación de método de eliminación y actualización en la actividad Agenda.


Tarea Dificultad
  • 2. Función para la eliminación en la actividad. 4
    3. Función para la edición de una nota en agenda. 4


Seguimiento del martes:
Fecha: 30/04/2019

1. ¿ Qué se ha hecho ?

Se implementó el código necesario para relacionar la actividad de base de datos con el método de eliminación en Agenda.




Edición y eliminación de Notas en Agenda

Code: Select all


  

    private void Alert(String f) {

        AlertDialog alerta;
        alerta = new AlertDialog.Builder(this).create();
        if (f.equals("list")) {
            alerta.setTitle("El titulo de la nota es: " + getTitle);
            alerta.setMessage("¿Qué acción desea realizar?");
            alerta.setButton('1', "see note", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
                                verNota("see");
                            }
                        });

            /*
            alerta.setButton('2', "delete notas", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    delete("delete");
                    Intent intent = getIntent();
                    startActivity(intent);
                }
            });
            alerta.setButton('h', "edit notas", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    verNota("edit");
                }
            });
        }else{
            if(f.equals("deletes")){
                alerta.setTitle("mensaje de confirmacióN");
                alerta.setMessage("¿Qué acción desea realizar?");
                alerta.setButton('3', "cancelar", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        return;
                    }
                });
                alerta.setButton('4', "Eliminar notas", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        delete("delete");
                        Intent intent = getIntent();
                        startActivity(intent);
                    }
                });
            }
            */

        }
        alerta.show();

    }



    public void delete(String f){
        DB = new AdaptadorDB(this);
        if(f.equals("delete")){
            DB.deleteNote(getTitle);
        }else{
            if(f.equals("deletes")){
                DB.DeleteNotes();

            }
        }


    }




    public void verNota(String s){

      String content;
      String type;


        type = getTitle;
        content = getNote();
        actividad(type,content);




      //Toast.makeText(this ,content,Toast.LENGTH_LONG).show();






    }


}


Mejoramiento de interfaz:

Image

2. ¿ Qué se va a hacer ?

Se implementará el codigo en Profesores.

3. ¿Qué dificultades hemos tenido?

El Alert Diálogo usado como menú para eliminar o editar, hace que la aplicación se detenga. Este será reemplazado por algo más eficiente.
Last edited by JuanZuluaga02 on Thu May 02, 2019 8:32 pm, edited 1 time in total.
Juan Manuel Zuluaga
POO1

User avatar
xacarana
Site Admin
Posts: 1148
Joined: Fri Jan 15, 2016 6:13 pm

Re: University - ISolutions

Post by xacarana » Thu May 02, 2019 12:24 pm

Image

Bien por el avance, recuerda publicar el día de la clase.
Andrés Bedoya Tobón
Profesor
"I only smile in the dark, I only smile when it's complicated" Raybiez

User avatar
JuanZuluaga02
Posts: 34
Joined: Tue Jan 22, 2019 12:12 pm

Re: University - ISolutions

Post by JuanZuluaga02 » Thu May 02, 2019 8:38 pm

Seguimiento del jueves:
Fecha: 2/05/2019

1. ¿ Qué se ha hecho ?

Se implementó el código necesario para relacionar la actividad de base de datos con el método de edición en Profesores.




Edición de datos en Profesores

Code: Select all



    private void Alert(String f) {

        AlertDialog alerta;
        alerta = new AlertDialog.Builder(this).create();
        if (f.equals("list")) {
            alerta.setTitle("El titulo de la nota es: " + getTitle);
            alerta.setMessage("¿Qué acción desea realizar?");
            alerta.setButton('1', "see note", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
                                verNota("see");
                            }
                        });

            /*
            alerta.setButton('2', "delete notas", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    delete("delete");
                    Intent intent = getIntent();
                    startActivity(intent);
                }
            });
            alerta.setButton('h', "edit notas", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    verNota("edit");
                }
            });
        }else{
            if(f.equals("deletes")){
                alerta.setTitle("mensaje de confirmacióN");
                alerta.setMessage("¿Qué acción desea realizar?");
                alerta.setButton('3', "cancelar", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        return;
                    }
                });
                alerta.setButton('4', "Eliminar notas", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        delete("delete");
                        Intent intent = getIntent();
                        startActivity(intent);
                    }
                });
            }
            */

        }
        alerta.show();

    }



    public void delete(String f){
        DB = new AdaptadorDB(this);
        if(f.equals("delete")){
            DB.deleteNote(getTitle);
        }else{
            if(f.equals("deletes")){
                DB.DeleteNotes();

            }
        }


    }


  

   


Mejoramiento de interfaz:

Image

2. ¿ Qué se va a hacer ?

Se implementará el codigo por último en Asignaturas y se intentará arreglar el problema con los AlertDialogs de manera recursiva.

3. ¿Qué dificultades hemos tenido?

El Alert Diálogo usado como menú para eliminar o editar, hace que la aplicación se detenga. Este será reemplazado por algo más eficiente.
Juan Manuel Zuluaga
POO1

Post Reply