7
votes

Barre d'action avec icône et texte en mode portrait

Je n'arrive pas à obtenir une image et un texte pour travailler en mode portrait sur les éléments de menu de la barre d'action, quoi que ce soit. J'ai même essayé de forcer l'orientation portrait android

mon xml: xxx

a quelqu'un qui a compris cela?


2 commentaires

Je ne suis pas sûr que cela fera une différence mais essayez "toujours | withText" à la place


@ituki je doute que cela fonctionnera. Voir ma réponse ci-dessous :)


3 Réponses :


8
votes

du fichier config.xml de la barre d'action native:

valeurs: xxx

valeurs-480DP: xxx

Pour répondre à votre question:

Non, vous ne pouvez pas faire cela, si la largeur des périphériques est inférieure à 480DP. (Sauf si vous souhaitez créer une ROM personnalisée avec un cadre modé)


1 commentaires

Eh bien, il y a cette idée. Je suppose que je vais simplement créer des boutons personnalisés sur une vue. Je vous remercie!



0
votes

La réponse d'Ahmad indique clairement pourquoi cela n'est pas possible. Il est gênant que la barre d'action n'est pas plus facile à personnaliser.

Une solution rapide et sale est de mettre deux boutons dans le menu, de retirer l'icône d'une et de donner le second nom différent. Ensuite, dans le fichier Java correspondant, reproduisez la fonctionnalité du bouton supplémentaire dans OnOptionsItemselected. Cela augmente de devoir créer une vue personnalisée pour la barre d'action. P>

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:yourapp="http://schemas.android.com/apk/res-auto" >
    <item android:id="@+id/action_done"
          android:icon="@drawable/ic_done"
          android:title="@string/done"
          yourapp:showAsAction="always" />
    <item android:id="@+id/action_done2"
          android:title="@string/done"
          yourapp:showAsAction="always" />
    <item android:id="@+id/action_cancel"
          android:icon="@drawable/ic_cancel"
          android:title="@string/cancel"
          yourapp:showAsAction="always" />
    <item android:id="@+id/action_cancel2"
          android:title="@string/cancel"
          yourapp:showAsAction="always" />
</menu>


0 commentaires

0
votes

Le moyen le plus simple de le faire est:

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="?attr/actionBarSize">
<TextView
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:gravity="center"
    android:text="@string/nexo_tile_short"
    android:clickable="true"
    android:focusable="true"
    android:textSize="@dimen/text_size_small"
    android:textStyle="bold"
    android:textColor="?attr/actionMenuTextColor"
    />
<ImageView
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:paddingTop="@dimen/padding_small"
    android:paddingBottom="@dimen/padding_small"
    android:src="@drawable/nexo"/>
 </LinearLayout>


0 commentaires