It’s important to an App developer to build a reusable, flexible and easy-to-modify UI when develop an Android App. You might imagine that you are developing an App and most of its activities have almost the same layout, like this:
- The top toolbar bar with a back button, a title view and a close button.
- The main part of the screen which shows a list view, or a detial view, or a camera preview.
- The bottom toolbar with two buttons which perform certain operations when clicked.
Using UI fragments separates the UI of your app into building blocks, and create an abstract activity for hosting a fragment.
Step1: Create A Generic Fragment-Hosting Layout
- To efficiently re-use complete layouts, you can use the <include/> tag to embed another layout inside the current layout.
- To make a spot for the fragment’s view in the activity’s view hierarchy, you can use
FrameLayoutas a container view for hosting fragment;
- To lazily inflate layout resources at runtime, you can use
toolbar_actionbar.xml code click here.
Step2: Create An Abstract Activity class
Nearly every activity you will create in this app will require the same code:
- Set the ActionBar title, callbacks when ActionBar’s Back & Close button clicked.
- Create a fragment instance and commit it.
To avoid typing it again and again, you are going to stash it in an abstract class
BasicActivity.java, code snippet::
To inflate bottom toolbar layout for activity which has a bottom toolbar, create another abstract class
BasicOperationActivity.java which extends
BasicActivity.java, code snippet:
Step3: Create A Single Fragment Activtiy
Then you will create a single fragment activity, code snippet:
Step4: Create Two Fragments Activity
If the activity has more than one fragment, you will use
hide methods to manager these fragments, code snippet: