Android 在attrs.xml和themes.xml中的attr中获取布局集

Android 在attrs.xml和themes.xml中的attr中获取布局集,android,android-resources,Android,Android Resources,这是我的属性: <attr name="taskTimePickerLayout" format="reference" /> 下面是如何在themes.xml中设置的: <item name="taskTimePickerLayout" type="reference">@layout/task_time_picker_holo</item> @layout/task\u time\u picker\u holo 我想使用attr中的布局对布局进行

这是我的属性:

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

下面是如何在themes.xml中设置的:

<item name="taskTimePickerLayout" type="reference">@layout/task_time_picker_holo</item>
@layout/task\u time\u picker\u holo

我想使用attr中的布局对布局进行充气,我该怎么做?我已尝试使用
R.attr.taskTimePickerLayout
作为充气机的资源,但这会引发ResourceNotFoundException。

将这段代码放入您的活动(或片段):

确保在执行此代码之前将主题应用于活动

这段代码基本上是基于应用于当前上下文的主题来解析参考R.attr.taskTimePickerLayout。typedValue.resourceId是已解析引用的值(在本例中是@layout/task\u time\u picker\u holo的布局id)。
这也适用于所有其他引用(绘图、颜色等)

这让我更接近,但我得到了
android.content.res.Resources$NotFoundException:Resource ID#0x0
。上下文应该是好的,主题绝对正确。你可以看看我的源代码。这个部分是。@layout/task\u time\u选择器(顺便说一句,您不需要type=“layout”属性)需要在主题定义中,否则它不是主题的一部分,因此未定义且无法解析。
TypedValue typedValue = new TypedValue();
getTheme().resolveAttribute(R.attr.taskTimePickerLayout, typedValue, true);
setContentView(typedValue.resourceId);