Je veux définir une icône à la fin de mon Toolbar
, qui démarre une autre activité. Ma portion Toolbar
<Android.support.v7.widget.Toolbar xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res-auto"
Android:id="@+id/toolbar"
Android:layout_width="match_parent"
Android:layout_height="@dimen/abc_action_bar_default_height_material"
Android:background="#2B4AE0"
app:theme="@style/ToolBarStyle">
<TextView
Android:id="@+id/headerText"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:textAppearance="@Android:style/TextAppearance.Theme"
Android:textColor="@Android:color/white" />
<RelativeLayout
Android:id="@+id/notification"
Android:layout_width="50dp"
Android:layout_height="match_parent"
Android:clickable="true"
Android:gravity="center" />
<ImageView
Android:layout_width="25dp"
Android:layout_height="25dp"
Android:layout_centerHorizontal="true"
Android:layout_centerVertical="true"
Android:src="@drawable/bell_icon" />
</RelativeLayout>
</Android.support.v7.widget.Toolbar>
J'ai essayé
Android:layout_alignParentEnd="true"
et définissant la marge à gauche, mais cela ne fonctionne pas correctement.
Essayez d'ajouter ceci à votre ImageView:
Android:layout_gravity="end"
Si vous voulez quelque chose comme ça (icône 2)
Vous n'avez pas besoin d'ajouter manuellement une icône à la mise en page, vous devez implémenter menu.xml
Créez menu.xml comme ceci
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:Android="http://schemas.Android.com/apk/res/Android"> <item Android:id="@+id/new_activity" Android:icon="@drawable/ic_custom_icon" Android:title="@string/new_activity" /> </menu>
Ajoutez-le dans votre activité/fragment à la barre d'actions/barre d'outils en
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return true;
}
Gérer les événements des éléments de menu
La barre d'outils avec menus fonctionne bien, elle définit automatiquement les icônes à droite de la barre d'outils
S'il y a quelqu'un qui reste confus (y compris moi avant), en quelque sorte Android ne fournit pas de saisie semi-automatique pour le Android:layout_gravity
sous la balise toolbar
. Donc pour que ça marche, copiez et collez simplement Android:layout_gravity="end"
à la disposition ImageView
/.
<item
Android:title="kjljk"
app:showAsAction="always"
Android:id="@+id/menuitem_search"
Android:icon="@drawable/pdficon"
>
</item>
Puis dans OnCreateView: setHasOptionsMenu (true); En fermant OncreateView ci-dessous, écrivez ceci: @Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.pdf, menu);
...
}