此问题已经在这里有了答案:
我可以通过代码中的工具栏中的tint设置导航图标:
Toolbar toolbar = findViewById(R.id.biometry_agreement_toolbar);
Drawable drawable = AppCompatResources.getDrawable(requireContext(), R.drawable.ic_24_close);
drawable.setColorFilter(ColorGenerator.buildColorFilterByAttr(toolbar.getContext(), R.attr.colorMaskColored));
toolbar.setNavigationIcon(drawable);
或者我可以在xml中设置这样的图标,但是在这种情况下,由于没有属性navigationIconTint:],我无法设置tint
<androidx.appcompat.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" app:navigationIcon="@drawable/ic_24_close" app:titleTextColor="@color/color_primary" tools:title="@string/title"/>
是否有可能在没有Java代码的情况下以某种方式设置导航图标的色调?或在工具栏中设置自定义图标会清除所有色调和颜色?
我不喜欢从Java设置图标,因为没有很好的代码重用来初始化工具栏。
我尝试了不同的自定义样式,覆盖了colorControlNormal,但没有运气。
提前感谢
我可以通过以下代码在工具栏中设置带有色调的导航图标:工具栏工具栏= findViewById(R.id.biometry_agreement_toolbar); Drawable drawable = AppCompatResources.getDrawable(requireContext(),...
对于AndroidX,您应该使用<com.google.android.material.appbar.MaterialToolbar
代替<androidx.appcompat.widget.Toolbar