Android: personnaliser les menus et gérer les clics

L’affichage et la personnalisation d’un menu dans une application Android est très simple. Nous devons simplement indiquer les items de notre menu dans un fichier xml dans le dossier res/menu/ et appeler son affichage dans la classe main. La gestion des actions sur notre menu est également implémenter dans cette classe.

Voici les fichiers et les quelques lignes de code à mettre en place pour afficher un menu et gérer les clics sur les items de ce dernier.

le fichier res/menu/main.xml

<menu xmlns:android="http://schemas.android.com/apk/res/android" >

    <item
        android:id="@+id/option_menu_1"
        android:title="Option 1"/>
    <item
        android:id="@+id/option_menu_2"
        android:title="Option 2"/>

</menu>

le fichier MainActivity.java où le fichier main.xml est « inflate » dans la fonction onCreateOptionsMenu et où nous gérons simplement les actions sur ce dernier avec la fonction onOptionsItemSelected.

package com.example.testsdivers;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;

public class MainActivity extends Activity  {


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

	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}

	@Override
	public boolean onOptionsItemSelected(MenuItem item) {
		switch (item.getItemId()) {
		case R.id.option_menu_1:
			Toast.makeText(this,"Option Menu 1",Toast.LENGTH_SHORT).show();
			return true;
		case R.id.option_menu_2:
			Toast.makeText(this,"Option Menu 2",Toast.LENGTH_SHORT).show();
			return true;
		default:
			return true;
		}
	}

}

android menu

Android menu après un clic

Publié dans Android

quand j’aurai le temps

  • les filtres wordpress
  • plugin wordpress et enregistrement de données
  • les wordpress custom post type
  • la bdd d'un blog wordpress
  • la balise more de wp
  • personnaliser une galerie wp
  • gérer les longueurs des extraits de wp
  • les animations css3
  • le memento symphony2
  • le squelette d'une page html5
  • liste sur plusieurs colonnes
  • le responsive design
  • exemple d'un jeu basique en html5
  • la réplication des bases de données
  • mettre en place une architecture en silo avec wp
  • parser un fichier xml (donc un rss) avec php5
  • mettre en place lightbox sans plugin
  • améliorer les performances de son wp
  • ajouter un bouton à l'éditeur de texte de wp
  • ...