在使用 Dot42 时,我似乎可以访问 PreferenceActivity 类的 AddPreferencesFromResource(int) 但传递给此方法的资源对我不可用。我希望调用看起来像 AddPreferencesFromResource(R.Xmls.Preferences),但是 R.Xmls 不存在。xml 文件夹包含preferences.xml 并存储在布局、菜单等资源文件夹旁边。但是生成的 R.cs 不包含 Xmls 的类。包含的示例项目没有任何使用 PreferenceActivity 的示例。谁能确认 Dot42 是否支持首选项?
问问题
340 次
1 回答
1
您的问题可能不是如何从 XML 填充首选项片段,而是更多如何将 XML 资源添加到 dot42 项目以及如何引用它。
您可以像往常一样通过将 XML 文件添加到 Visual Studio (dot42) 项目来添加 XML 资源;这与将 XML 文件添加到非 dot42 项目没有什么不同。接下来,转到文件的属性并将 BuildAction 设置为 XmlResource。
请注意,dot42 没有文件夹结构要求(例如 /res/xml/)。
现在再次编译并键入“R”。你会看到 R.Xmls 带来的智能。
如果您查看 R.cs(在 Properties 下),您会看到它现在包含 R.Xmls 以及为您的 XML 资源生成的成员:
//------------------------------------------------------------------------------
// This file is automatically generated by dot42
//------------------------------------------------------------------------------
namespace PreferenceFragmentSample
{
using System;
public sealed class R
{
public sealed class Layouts
{
public const int MainLayout = 0x7f020000;
}
public sealed class Xmls
{
public const int preferences = 0x7f030000;
}
}
}
于 2013-10-04T16:07:00.680 回答