Acceder

Ver la Versión Completa : [ CONSULTA ] Ayuda con GridView


ruben_ups
20/10/14, 01:19:08
Buenas!!!

Querría pediros ayuda por favor.

Estoy haciendo una aplicación en Android.

Y en el layout tengo puesto un GridView.
http://developer.android.com/guide/topics/ui/layout/gridview.html

Pero nose como hacer, para cada vez que pincho una imagen, me abra una activity.

Tengo puesto esto.

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_funr);

GridView gridview = (GridView) findViewById(R.id.gridview);

gridview.setAdapter(new ImageAdapter(this));

gridview.setOnItemClickListener(new OnItemClickListener() {

public void onItemClick(AdapterView<?> parent, View v,
int position, long id) {
Toast.makeText(FunRadio.this, "Posicion " + position, Toast.LENGTH_SHORT)
.show();
}
});
}


Nose si se podría hacer algo tal como, si position vale 0 abrir esta activity, si vale 1 esta otra, si vale 2 esta otra, etc.

Como si de un navigation drawer se tratara. Con case 0 case 1 etc.
Espero que me podais echar una mano!
Muchas gracias por vuestro tiempo y por vuestras respuestas! :gracias::aplausos:

Guixe94
20/10/14, 11:45:33
No he utilizado nunca grid view, pero supongo que si se podra hacer como tu dices con lo de case 0, case 1, etc. No creo que sea muy dificil de hacer

ruben_ups
20/10/14, 18:33:44
Vale, ya lo he resuelto. Os lo dejo, por si a alguno le pasa


public void onItemClick(AdapterView<?> parent, View v, int position, long id) {

switch( position )
{
case 0: Intent newActivity0 = new Intent(getApplicationContext(), comosellamelatuya.class);
startActivity(newActivity0);
break;
case 1: Intent newActivity1 = new Intent(getApplicationContext(), comosellamelatuya.class);
startActivity(newActivity1);
break;
case 2: Intent newActivity2 = new Intent(getApplicationContext(), comosellamelatuya.class);
startActivity(newActivity2);
break;
case 3: Intent newActivity3 = new Intent(getApplicationContext(), comosellamelatuya.class);
startActivity(newActivity3);
break;
case 4: Intent newActivity4 = new Intent(getApplicationContext(), comosellamelatuya.class);
startActivity(newActivity4);
break;

}