gpt4 book ai didi

android - 如何从属性引用中检索可绘制对象

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:26:03 28 4
gpt4 key购买 nike

我在我的应用程序中定义了主题和样式。图标(可绘制)使用样式文件中的引用定义为

<attr name="myicon" format="reference" />

和样式为

<style name="CustomTheme" parent="android:Theme.Holo">
<item name="myicon">@drawable/ajout_produit_light</item>

我需要以编程方式检索可绘制对象,以便在 dialogfragment 中使用良好的图像。如果我喜欢

mydialog.setIcon(R.style.myicon);

我得到一个等于 0 的 id,所以没有图像

我试着用类似的东西

int[] attrs = new int[] { R.drawable.myicon};
TypedArray ta = getActivity().getApplication().getTheme().obtainStyledAttributes(attrs);
Drawable mydrawable = ta.getDrawable(0);
mTxtTitre.setCompoundDrawables(mydrawable, null, null, null);

我尝试过类似的不同方法,但结果始终为 0 或 null :-/

我该怎么做?

最佳答案

我在 Access resource defined in theme and attrs.xml android

TypedArray a = getTheme().obtainStyledAttributes(R.style.AppTheme, new int[] {R.attr.homeIcon});     
int attributeResourceId = a.getResourceId(0, 0);
Drawable drawable = getResources().getDrawable(attributeResourceId);

关于android - 如何从属性引用中检索可绘制对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15339611/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com