I am trying to create a custom extended toolbar in android with an edit text in the toolbar. The layout that I want to implement looks something like this
The code that I have written to implement is something like this:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">
<android.support.v7.widget.Toolbar
android:id="@+id/my_awesome_toolbar"
android:layout_height="256dp"
android:layout_width="match_parent"
android:minHeight="?attr/actionBarSize"
android:background="?attr/colorPrimary"
>
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/searchbox"
android:layout_alignParentBottom="true"
android:text="Test"
android:background="#ffffff"
/>
</android.support.v7.widget.Toolbar>
And the Activity has the following code
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.my_awesome_toolbar);
if (toolbar != null) {
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
getSupportActionBar().setDisplayShowHomeEnabled(false);
}}
But what I get instead is this:
There are not a lot of tutorials about customizing the extended toolbar so would really appreciate some help.
Toolbar was introduced in Android Lollipop, API 21 release and is the spiritual successor of the ActionBar. It's a ViewGroup that can be placed anywhere in your XML layouts. Toolbar's appearance and behavior can be more easily customized than the ActionBar.
I think you just need to add gravity="bottom" on the Toolbar settings like:
<android.support.v7.widget.Toolbar
android:id="@+id/my_awesome_toolbar"
android:gravity="bottom"
android:layout_height="256dp"
android:layout_width="match_parent"
android:minHeight="?attr/actionBarSize"
android:background="?attr/colorPrimary">
I had to add some margin to the bottom of the layout to get the edit to appear but that should get the Text to the bottom of the edit.
Or you can set layout_gravity on the EditText.
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:layout_gravity="bottom"
android:id="@+id/searchbox"
android:text="Test"
android:background="#ffffff"/>
I'm surprised alignParentBottom compiles. I don't believe Toolbar inherits from RelativeLayout.
Edit - Here's my complete layout:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<android.support.v7.widget.Toolbar
android:id="@+id/my_awesome_toolbar"
android:layout_height="264dp"
android:layout_width="match_parent"
android:layout_alignParentBottom="true"
android:minHeight="?attr/actionBarSize"
android:background="?attr/colorPrimary">
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:layout_gravity="bottom"
android:id="@+id/searchbox"
android:text="Test"
android:background="#ffffff"/>
</android.support.v7.widget.Toolbar>
</RelativeLayout>
Which results in this:
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With