Android Toolbar Title
17,145
Solution 1
Toolbar Title can be set in two ways
1.In Layout XML
<android.support.design.widget.AppBarLayout
android:id="@+id/appBarLayout"
android:layout_width="match_parent"
android:layout_height="56dp"
android:elevation="4dp"
android:theme="@style/AppTheme.AppBarOverlay"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
app:title="Main Activity"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:navigationIcon="@drawable/ic_arrow_back_white_24dp"
app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout>
2. In Java It will work in AppCompatActivity
Toolbar toolbar = findViewById(R.id.toolbar);
toolbar.setTitle("Notice Board");
setSupportActionBar(toolbar);
Solution 2
I used below line to change the toolbar title
getSupportActionBar().setTitle("YOUR_TITLE");
Solution 3
After this line toolbar = findViewById(R.id.toolbar);
add toolbar.setTitle("History & Reports");
and remove setTitle("History & Reports");
Solution 4
Set title in your layout as i did below
<?xml version="1.0" encoding="utf-8"?>
<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="wrap_content"
android:layout_margin="1dp"
android:background="@color/white"
android:fitsSystemWindows="true"
android:minHeight="?attr/actionBarSize"
android:titleTextColor="@color/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways"
app:navigationIcon="?attr/homeAsUpIndicator"
app:theme="@style/GalaxyZooThemeToolbarDarkOverflow">
<TextView
android:id="@+id/textViewTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/app_name"
android:layout_marginLeft="5dp"
android:textAppearance="@android:style/TextAppearance.DeviceDefault.Large"/>
</android.support.v7.widget.Toolbar>
and in your activity simply set the toolbar and disable its default title as follows
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
ActionBar actionBar = getSupportActionBar();
if(actionBar != null)
actionBar.setDisplayShowTitleEnabled(false);
Related videos on Youtube
Author by
Listo
Updated on June 04, 2022Comments
-
Listo almost 2 years
Unable to change toolbar title I set title in
manifeast.xml
& also usedsetTitle("TITLE");
I set title as History & Reports but it display different title Notifications which is another activity title.
I checked
manifeast.xml
but No change, Can anyone please help me from this.Here is my code
public class Nav_HistoryAndReports extends AppCompatActivity { private Toolbar toolbar; private TabLayout tabLayout; private ViewPager viewPager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setTitle("History & Reports"); setContentView(R.layout.nav_history_and_reports); toolbar = (Toolbar) findViewById(R.id.toolbar); setToolbar(toolbar); viewPager = (ViewPager) findViewById(R.id.viewpager); setupViewPager(viewPager); tabLayout = (TabLayout) findViewById(R.id.tabs); tabLayout.setupWithViewPager(viewPager); } public void setToolbar(Toolbar toolbar) { setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); } private void setupViewPager(ViewPager viewPager) { ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager()); adapter.addFragment(new FragmentHistoryAndReports_Visits(), "VISITS"); adapter.addFragment(new FragmentHistoryAndReports_Visitors(), "VISITORS"); adapter.addFragment(new FragmentHistoryAndReports_Map(), "MAP"); viewPager.setAdapter(adapter); } class ViewPagerAdapter extends FragmentPagerAdapter { private final List<Fragment> mFragmentList = new ArrayList<>(); private final List<String> mFragmentTitleList = new ArrayList<>(); public ViewPagerAdapter(FragmentManager manager) { super(manager); } @Override public Fragment getItem(int position) { return mFragmentList.get(position); } @Override public int getCount() { return mFragmentList.size(); } public void addFragment(Fragment fragment, String title) { mFragmentList.add(fragment); mFragmentTitleList.add(title); } @Override public CharSequence getPageTitle(int position) { return mFragmentTitleList.get(position); } }
toolbar.xml
<?xml version="1.0" encoding="utf-8"?> <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="wrap_content" android:layout_margin="1dp" android:background="@color/white" android:fitsSystemWindows="true" android:minHeight="?attr/actionBarSize" android:titleTextColor="@color/colorPrimary" app:layout_scrollFlags="scroll|enterAlways" app:navigationIcon="?attr/homeAsUpIndicator" app:theme="@style/GalaxyZooThemeToolbarDarkOverflow"> </android.support.v7.widget.Toolbar>
-
Nizam about 7 yearssetTitle() after setToolbar()
-
Mike M. about 7 yearsCall
getSupportActionBar().setTitle("History & Reports");
at the end of, or after calling, yoursetToolbar()
method.
-
-
Listo about 7 yearsThanks for the quick response, but No Change
-
Bahu about 7 years@Listo add this also with Rachit suggestion getSupportActionBar().setDisplayShowTitleEnabled(true);
-
Mike M. about 7 years
setSupportActionBar(toolbar)
- They're already using aNoActionBar
theme. -
Shashidhar Mayannavar about 7 years@Listo, Glad it helped.
-
Mirza Asad over 5 yearsMake sure activity is AppCompatActivity