What is the ID of the back arrow drawable in the ActionBar?
Solution 1
If you have the support library in your project, you can make a back button in any place in your applicaction like this:
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="?attr/homeAsUpIndicator"
android:background="?attr/selectableItemBackgroundBorderless"/>
Specifically the resource for the back arrow is ?attr/homeAsUpIndicator
.
Solution 2
If you need to use the default back arrow of Android SDK and also with AndroidX then you can reach it with the following
androidx.appcompat.R.drawable.abc_ic_ab_back_material
Additionally, if you are planning to use it for a custom toolbar then you can set it like this
toolbar.setNavigationIcon(androidx.appcompat.R.drawable.abc_ic_ab_back_material)
And if you need to set click listener
toolbar.setNavigationOnClickListener { doSomething() }
Solution 3
You can easily create a back arrow using Android asset studio.
Click on res
folder and then right click on drawable -> New -> Vector Asset
hmuss
Updated on July 10, 2022Comments
-
hmuss almost 2 years
The following code causes a back arrow to appear in the ActionBar:
getSupportActionBar().setDisplayShowHomeEnabled(true); getSupportActionBar().setDisplayHomeAsUpEnabled(true);
I'm looking for the resource ID of the arrow drawable, i.e. android.R.drawable.xxx. The reason I need this ID is so that I can manually set an identical arrow (size & colour) elsewhere in my app.
I tried making my own drawable and using that but the size was different from the one in the ActionBar.