Android - Llamar un procedimiento/funcion desde oncreate solo una vez

 
Vista:
Imágen de perfil de Ramon Humberto

Llamar un procedimiento/funcion desde oncreate solo una vez

Publicado por Ramon Humberto (3 intervenciones) el 09/01/2016 22:24:26
Hola a todos, eh creado una App que al iniciar automaticamente se conectar a un server y muestra imagenes y texto en un listview al hacer click en un item muestra la imagen en una segunda activity de tamaño mas grande.

al cerrar la segunda activity, la App vuelve a conectarse al server y mostrar las imagenes de nuevo.

Lo que quiero es que solo al abrir la App se conecte y muestre los datos, y al abrir la segunda activity y cerrarla, ya no se conecte de nuevo.

Aqui esta el codigo que tengo dentro del Oncreate:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
/*****************************************************************************************/
protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        listView = (ListView) findViewById(R.id.list);
        adapter = new CustomListAdapter(this, movieList);
        listView.setAdapter(adapter);
 
        /*Evento Click ListView*/
        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
 
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                //***Muestra un Mensaje***
                //Toast.makeText(MainActivity.this, "You Clicked at " +web[+ position], Toast.LENGTH_SHORT).show();
 
                //***Abre otra pantalla y muestra la Imagen seleccionada.***
                Intent intent = new Intent(MainActivity.this, Main2Activity.class);
 
                ImageView imgImagen = (ImageView) view.findViewById(R.id.thumbnail);
 
 
                Bitmap imagen = ((BitmapDrawable) imgImagen.getDrawable()).getBitmap();
                intent.putExtra("BitmapImage", imagen);
                startActivity(intent);
            }
        });
        /*Fin Evento Click listView*/
 
 
            pDialog = new ProgressDialog(this);
            // Showing progress dialog before making http request
            pDialog.setMessage("Mostrando Imagenes...");
            pDialog.show();
 
            // changing action bar color
            //getActionBar().setBackgroundDrawable(new ColorDrawable(Color.parseColor("#1b1b1b")));
 
            // Adding request to request queue
            AppController.getInstance().addToRequestQueue(movieReq);
 
 
    }
 
/*****************************************************************************************/

el procedimiento AppController.getInstance().addToRequestQueue(movieReq);, es el que hace la coneccion.

Saludos y gracias por su tiempo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Francisco
Val: 466
Oro
Ha mantenido su posición en Android (en relación al último mes)
Gráfica de Android

Llamar un procedimiento/funcion desde oncreate solo una vez

Publicado por Francisco (358 intervenciones) el 10/01/2016 01:24:20
boolean cargada=false:

1
2
3
4
5
if(cargada==false){
AppController.getInstance().addToRequstQueue(movieReq);
cargada=true;     //debes cambiar el valor de cargada=true y no te volvera a cargar las imagenes
 
}


si no se te mantiene la variable cargada=true;
deberas asignarle el valor cargada=true desde el metodo

1
2
3
4
protected void onActivityResult(int requestCode,int resultCode, Intent pData) {
 
       cargada==true;
}



Comenta si te ha servido de ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Llamar un procedimiento/funcion desde oncreate solo una vez

Publicado por Ramon Humberto (3 intervenciones) el 04/02/2016 22:10:43
Gracias por su ayuda, lo solucione con este codigo:

protected void onResume() {
super.onResume();

cargada = true;
}

Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar