如何将正确的主题颜色应用于操作栏中的自定义向上指示器?

问题描述 投票:0回答:1

如何为

supportActionBar.setHomeAsUpIndicator()
中的操作栏应用正确的颜色? 在充气和提供自定义可绘制对象时,我最终得到的是默认图标色调,而不是操作栏色调颜色。

android android-actionbar android-drawable
1个回答
0
投票

关键是在膨胀可绘制对象时使用正确的主题。 如果您使用操作栏上下文中的主题,您将应用正确的颜色:

val actionBar = supportActionBar ?: throw IllegalStateException("Activity should have action bar.")
val closeDrawable = ResourcesCompat.getDrawable(resources, R.drawable.ic_close_white_24dp, actionBar.themedContext.theme)!!
ctionBar.setHomeAsUpIndicator(closeDrawable)

关键是使用主题

actionBar.themedContext.theme
,而不是活动中的默认主题。

© www.soinside.com 2019 - 2024. All rights reserved.