Я хотел бы передать тему панели инструментов в класс моей другой библиотеки в AndroidManifest. Я объявил тему в styles.xml следующим образом:
<style name = "MyTheme" parent = "AppTheme">
<item name = "homeAsUpIndicator">@drawable/back</item>
<item name = "title">@string/app_name</item>
<item name = "subtitle">@string/app_version</item>
</style>
Принимая во внимание, что кнопка «Назад» не видна при отображении класса этой библиотеки. Так есть ли способ setDisplayHomeAsUpEnabled стать истинным в самом styles.xml??
<androidx.appcompat.widget.Toolbar
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:background = "@color/orange"
app:navigationIcon = "@drawable/backbutton"//imp code
app:title = "Check Out"
android:id = "@+id/toolbar_checkout_main">
</androidx.appcompat.widget.Toolbar>
в xml объявить app:navigationicon и использовать в java-файле
toolbar.setNavigationOnClickListener(v -> {
//on backbutton pressed code//
});
Мы можем использовать опцию navigationIcon, чтобы показать значок с помощью styles.xml.
Если вы ориентируетесь на API 21+,
<item name = "android:navigationIcon">@drawable/back</item>
Иначе,
<item name = "navigationIcon">@drawable/back</item>
Итак, моя тема должна быть,
<style name = "MyTheme" parent = "AppTheme">
<item name = "colorPrimary">@color/colorAccent</item>
<item name = "title">@string/app_name</item>
<item name = "subtitle">@string/app_version</item>
<item name = "navigationIcon">@drawable/back</item>
</style>
Привет @raj, я должен сделать это в styles.xml, так как мне нужно установить тему в класс библиотеки в манифесте, который не имеет экземпляра панели инструментов для настройки.