web-dev-qa-db-fra.com

titre Android ne s'affiche pas dans la barre d'outils

J'ai un fichier xml que j'utilise avec autant d'activités avec un fichier de fragments, mais mon problème est que je ne peux pas afficher le texte que je veux dans la barre d'outils. donc je devais le faire de cette façon.

mon xml:

<RelativeLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:tools="http://schemas.Android.com/tools"
    Android:id="@+id/frame_container"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent"
    tools:context=".StatusActivity"
    Android:orientation="vertical" >

    <Android.support.v7.widget.Toolbar
        Android:id="@+id/toolbar"
        style="@style/ToolBarStyle"
        Android:layout_width="match_parent"
        Android:layout_height="wrap_content"
        Android:background="?attr/colorPrimary"
        Android:minHeight="@dimen/abc_action_bar_default_height_material" />

</RelativeLayout>

Une de mes activités:

public class GroupChatActivity extends ActionBarActivity {

    @Override
    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_base_layout);

        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
         setSupportActionBar(toolbar);
         getSupportActionBar().setDisplayShowHomeEnabled(true);

         ActionBar actionBar = getSupportActionBar();
         actionBar.setTitle("Groups history");

        Aniways.init(this);

        if(savedInstanceState == null)
        {
            FragmentManager manager = getSupportFragmentManager();

            Fragment fragment = GroupChatFragment.newInstance(getIntent().getIntExtra("uid", 0));
            manager.beginTransaction().add(R.id.frame_container, fragment).commit();
        }
    }
}

comme vous pouvez le constater, j'essaie de définir le titre dans la barre d'action, mais cela ne fonctionne pas.

26
Kareem Essam Gaber
getSupportActionBar().setDisplayShowTitleEnabled(true);
36
massaimara98

Réglage, 

app:title="@string/my_title"

dans la déclaration de la Android.support.v7.widget.Toolbar, code le titre dans la barre d'outils.

Pour définir le titre par programme,

Toolbar toolbar = (Toolbar) findViewById(R.id.my_toolbar);
toolbar.setTitle("my title");
setSupportActionBar(toolbar);

dans votre classe d'activité.

20
Chad Mx

Essayez ceci .. cette méthode fonctionne pour moi .. !! J'espère que ça peut aider quelqu'un .. !!

<Android.support.v7.widget.Toolbar  
 xmlns:app="http://schemas.Android.com/apk/res-auto"  
 Android:id="@+id/my_awesome_toolbar"  
 Android:layout_width="match_parent"  
 Android:layout_height="wrap_content"  
 Android:background="?attr/colorPrimary"  
 Android:minHeight="?attr/actionBarSize"  
 app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" >  

<TextView  
   Android:id="@+id/toolbar_title"  
   Android:layout_width="wrap_content"  
   Android:layout_height="wrap_content"  
   Android:layout_gravity="center"  
   Android:singleLine="true"  
   Android:text="Toolbar Title"  
   Android:textColor="@Android:color/white"  
   Android:textSize="18sp"  
   Android:textStyle="bold" />  

</Android.support.v7.widget.Toolbar>  

MODIFIER

Vous pouvez aussi l'utiliser. 

setSupportActionBar(toolbar);
if (getSupportActionBar() != null)
      getSupportActionBar().setTitle("Toolbar title");
8
Ragu Swaminathan

Essayez toolbar.setTitle('Groups history');

1
csmurphy84

J'ai fait une barre d'action personnalisée.

Layout iguepardos_action_bar.xml avec ce code 

<?xml version="1.0" encoding="utf-8"?>
<Android.support.v7.widget.Toolbar
xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:local="http://schemas.Android.com/apk/res-auto"
Android:id="@+id/toolbar"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:background="@color/blanco"
Android:minHeight="?attr/actionBarSize">

    <TextView
    Android:id="@+id/toolbar_title"
    Android:layout_width="wrap_content"
    Android:layout_height="wrap_content"
    Android:layout_gravity="left"
    Android:singleLine="true"
    Android:text="Toolbar Title"
    Android:textColor="@color/naranja"
    Android:textSize="18sp" />

</Android.support.v7.widget.Toolbar>

Dans ma classe étendue AppCompatActivity j'avais ceci:

protected void onCreate(Bundle savedInstanceState) {
.... 
....

getSupportActionBar().setDisplayShowCustomEnabled(true); // is for specify use custom bar 
getSupportActionBar().setCustomView(R.layout.iguepardos_action_bar);  // my custom layout
getSupportActionBar().setDisplayHomeAsUpEnabled(true); // Button for come back

View mCustomView = getSupportActionBar().getCustomView(); // Set the view
TextView TitleToolBar = (TextView) mCustomView.findViewById(R.id.toolbar_title); // find title control
TitleToolBar.setText("The Title Show"); // Set the Title

}
0
A. Senna