主题特定的Drawable被视为“内部”吗?

时间:2018-05-24 10:45:34

标签: android android-studio android-theme

在Android Studio 2.2.2“项目”视图中,我选择:
外部库> Android API 27平台> res>可绘制

几乎并排,我看到以下2个州名单摘要:
btn_default .XML
btn_default_holo_light .XML

要在临时突出显示后规范化我的按钮,我已成功发出以下命令以应用(Android默认主题)背景。

btn.setBackground(ContextCompat.getDrawable(CTX.gc(),android.R.drawable.btn_default));

我现在希望应用特定于我的主题的背景('android:Theme.Holo.Light'),但编译器拒绝以下命令并使用'无法解析符号'。

btn.setBackground(ContextCompat.getDrawable(CTX.gc(),android.R.drawable.btn_default_holo_light));
btn.setBackground(ResourcesCompat.getDrawable(CTX.gc(),android.R.drawable.btn_default_holo_light, android.R.style.Theme_Holo_Light));

但事实上,他们是可以解决的,因为'右键单击>转到>声明'成功调用编辑器反对所需的Drawable。

问题的关键在于,当手动输入命令时,在提前输入选项中提供 btn_default ,而 btn_default_holo_light 则不提供。因此,显然主题特定的实体被认为是内部的,因此不包含在android.R.drawable中。

是否有一个R.drawable主题,或者实际上是引用这些Drawables的任何方法?

0 个答案:

没有答案