web-dev-qa-db-fra.com

Comment ajouter une barre d'action dans Android studio pour les débutants?

Je veux créer ma propre application et je veux y ajouter une barre d'action. Dans ma mise en page principale, je veux une barre d'action avec mon nom d'application uniquement. Dans mes autres mises en page/pages, je veux mon nom de page et un symbole de navigation arrière qui retourne à la page précédente. Quelqu'un peut-il me dire comment faire cela et quelqu’un peut-il me parler de la barre d’action par défaut d’Android, de ce qu’il fait et de ce que je fais avec.

5
chanaka

ÉTAPE 1: build.gradle (niveau d'application)

dependencies {
    compile 'com.Android.support:appcompat-v7:23.3.0'
}

ÉTAPE 2: AndroidManifest.xml

<application
....
Android:theme="@style/Theme.AppCompat.Light.DarkActionBar"/>

ÉTAPE 3: Dans votre activité

public class main extends AppCompatActivity
{
    ....
    @Override
    protected void onCreate(Bundle savedInstanceState) {

        ...

        getSupportActionBar().setTitle("Your Activity Title"); // for set actionbar title
        getSupportActionBar().setDisplayHomeAsUpEnabled(true); // for add back arrow in action bar
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
    // TODO Auto-generated method stub
    int id = item.getItemId();
    if (id == Android.R.id.home) {
        finish();
    }
    return super.onOptionsItemSelected(item);
}
10
Kalpesh Tarsariya

Changez votre thème de présentation en "Theme.DeviceDefault.Light.DarkActionBar"

Faire la disposition du menu de la barre d’action sous le dossier du menu

<menu xmlns:Android="http://schemas.Android.com/apk/res/Android" >
<item Android:id="@+id/a"
      Android:icon="@drawable/a"
      Android:showAsAction="always"
      Android:title=""/>

<item Android:id="@+id/b"
      Android:icon="@drawable/b"
      Android:showAsAction="always"
      Android:title=""/>

<item Android:id="@+id/c"
      Android:icon="@drawable/c"
      Android:showAsAction="always"
      Android:title=""/>

<item Android:id="@+id/d"
      Android:icon="@drawable/d"
      Android:showAsAction="always"
      Android:title=""/>

<item Android:id="@+id/e"
      Android:icon="@drawable/e"
      Android:showAsAction="always"
      Android:title=""/>

Puis écrivez le script suivant dans votre classe d'activité

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.actionbar_menu, menu);
    return super.onCreateOptionsMenu(menu);
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case R.id.a:
            //Write your code
            return true;
        case R.id.b:
            //Write your code
            return true;
        case R.id.c:
            //Write your code
            return true;
        case R.id.d:
            //Write your code
            return true;
        case R.id.e:
            //Write your code
            return true;
        default:
            return super.onOptionsItemSelected(item);
    }
}
1
Sabish.M

Vous pouvez facilement accéder à Actionbar avec

ActionBar actionBar =getSupportActionBar();
        actionBar.setDisplayHomeAsUpEnabled(true);
0
Rajpal Singh