Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

what is exact difference between appbar, toolbar, actionbar ? and when to use them specifically?

what is exact difference between appbar, Toolbar, Actionbar? and when to use them specifically? I try to find about them but it make me confuse so can any buddy explain to me what is exact difference between them and when to use them or are this are the same name of the single component?

like image 982
Grumpy Cat Avatar asked Jun 13 '17 08:06

Grumpy Cat


People also ask

What is appbar and toolbar?

The Toolbar is a kind of ViewGroup that can be placed in the XML layouts of an activity. It was introduced by the Google Android team during the release of Android Lollipop(API 21). The Toolbar is basically the advanced successor of the ActionBar.

What is an ActionBar?

In Android applications, ActionBar is the element present at the top of the activity screen. It is a salient feature of a mobile application that has a consistent presence over all its activities. It provides a visual structure to the app and contains some of the frequently used elements for the users.

What is ActionBar in Android Studio?

The app bar, also known as the action bar, is one of the most important design elements in your app's activities, because it provides a visual structure and interactive elements that are familiar to users.


2 Answers

  1. Toolbar A standard toolbar for use within application content.

A Toolbar is a generalization of action bars for use within application layouts. While an action bar is traditionally part of an Activity's opaque window decor controlled by the framework, a Toolbar may be placed at any arbitrary level of nesting within a view hierarchy. An application may choose to designate a Toolbar as the action bar for an Activity using the setActionBar() method.

Toolbar supports a more focused feature set than ActionBar. From start to end, a toolbar may contain a combination of the following optional elements:

  • A navigation button. This may be an Up arrow, navigation menu toggle, close, collapse, done or another glyph of the app's choosing. This button should always be used to access other navigational destinations within the container of the Toolbar and its signified content or otherwise leave the current context signified by the Toolbar. The navigation button is vertically aligned within the Toolbar's minimum height, if set.

  • A branded logo image. This may extend to the height of the bar and can be arbitrarily wide.

  • A title and subtitle. The title should be a signpost for the Toolbar's current position in the navigation hierarchy and the content contained there. The subtitle, if present should indicate any extended information about the current content. If an app uses a logo image it should strongly consider omitting a title and subtitle.

  • One or more custom views. The application may add arbitrary child views to the Toolbar. They will appear at this position within the layout. If a child view's Toolbar.LayoutParams indicates a Gravity value of CENTER_HORIZONTAL the view will attempt to center within the available space remaining in the Toolbar after all other elements have been measured. An action menu. The menu of actions will pin to the end of the Toolbar offering a few frequent, important or typical actions along with an optional overflow menu for additional actions. Action buttons are vertically aligned within the Toolbar's minimum height, if set.

2.Actionbar The action bar is a dedicated piece of real estate at the top of each screen that is generally persistent throughout the app.

It provides several key functions:

  • Makes important actions prominent and accessible in a predictable way (such as New or Search).

  • Supports consistent navigation and view switching within apps.

  • Reduces clutter by providing an action overflow for rarely used actions.

  • Provides a dedicated space for giving your app an identity.

3.Appbar The app bar, also known as the action bar, is one of the most important design elements in your app's activities, because it provides a visual structure and interactive elements that are familiar to users. Using the app bar makes your app consistent with other Android apps, allowing users to quickly understand how to operate your app and have a great experience. The key functions of the app bar are as follows:

  • A dedicated space for giving your app an identity and indicating the user's location in the app.

  • Access to important actions in a predictable way, such as search.

  • Support for navigation and view switching (with tabs or drop-down lists).

EDIT

An Action bar is traditionally a part of an Activity opaque window decor controlled by the framework but a Toolbar may be placed at any level of nesting within a view hierarchy. The toolbar provides more feature than ActionBar. A Toolbar may contain a combination of elements from start to end.

Important Note:

Toolbar’s are more flexible than ActionBar. We can easily modify its color, size and position. We can also add labels, logos, navigation icons and other views in it. In Material Design Android has updated the AppCompat support libraries so that we can use Toolbar’s in our devices running API Level 7 and up...

like image 155
AskNilesh Avatar answered Oct 03 '22 20:10

AskNilesh


App bar is rather a component name from the design while Toolbar and ActionBar classes are about the implementation. So the question is - what is the difference between Toolbar and ActionBar.

In short, ActionBar is an initial realization of the app bar component and it's bound to Activity. Initially it wasn't even a part of the Activity layout but rather a decoration that's rendered by the system.

Later on Toolbar was introduced, unlike ActionBar, Toolbar isn't bound to Activity, you can place it wherever you want inside your layout and it has a clearer API. To make the adoption of the Toolbar easier, there's setSupportActionBar() method in AppCompatActivity class, so you can use a Toolbar via ActionBar API, and it's where a lot of confusion comes from.

So, which class should you use in a modern Android app? There's no doubts - Toolbar, or its more advanced version from MDC library - MaterialToolbar. But as I mentioned above, a Toolbar can be used as a standalone solution and can also be set as an Activity action bar using setSupportActionBar() method. Take a look at this question Is setSupportActionbar required anymore? and the answer to find more details.

like image 22
Valeriy Katkov Avatar answered Oct 03 '22 20:10

Valeriy Katkov