Ma Toolbar
et EditText
ressemblent à ceci:
J'ai essayé de l'ajouter en tant que ActionView
mais j'ai obtenu le résultat suivant:
En gros, il vient d’ajouter mes mots 'Tap Below' comme titre sans le TextView
Voici ce que j'ai fait:
menu.xml
<menu>
...
...
<item
Android:id="@+id/edit_text_menu"
Android:orderInCategory="300"
Android:title="Tap Below"
Android:actionLayout="@layout/edit_text_layout"
app:showAsAction="ifRoom|collapseActionView"
/>
</menu>
edit_text_layout.xml
<?xml version="1.0" encoding="utf-8"?>
<EditText xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:id="@+id/myEditText"
Android:background="#000000">
</EditText>
En faisant cela, j'ai pensé ajouter ma mise en page EditText
à la Toolbar
... Quelqu'un peut-il aider s'il vous plaît?
Sinon, y a-t-il un truc où je peux superposer la EditText
sur la Toolbar
?
J'ai essayé d'ajouter <item name="windowActionModeOverlay">true</item>
mais cela n'a rien fait.
Ajoutez simplement la EditText
au XML pour votre ToolBar
. C'est probablement le moyen le plus simple.
<Android.support.v7.widget.Toolbar
Android:id="@+id/toolbar"
Android:layout_width="match_parent"
Android:layout_height="?attr/actionBarSize"
Android:background="?attr/colorPrimary"
Android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light">
<EditText
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:id="@+id/myEditText"
Android:background="#000000" />
</Android.support.v7.widget.Toolbar>
Ajoutez le EditText au xml de la barre d’outils.
Ajoutez la Toolbar
à votre mise en page Activity's
xml, en haut.
Définissez la barre d'outils en tant que ActionBar:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
}
Cela fera que la barre d'outils "deviendra" la ActionBar
avec EditText
à l'intérieur.
Utilisez le code ci-dessous
<Android.support.v7.widget.Toolbar
Android:id="@+id/toolbar"
app:titleTextColor="@color/colorAccent"
app:theme="@style/ToolbarColoredBackArrow"
app:subtitleTextColor="@color/colorAccent"
Android:layout_width="match_parent"
Android:layout_height="?attr/actionBarSize"
Android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay">
<TextView
Android:textColor="@color/colorAccent"
Android:text="June 14"
Android:textAllCaps="true"
Android:layout_gravity="right"
Android:layout_marginRight="11dp"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:id="@+id/tv_daily" />
</Android.support.v7.widget.Toolbar>