使用Dot42时,似乎可以访问PreferenceActivity类的AddPreferencesFromResource(int),但是传递给此方法的资源不可用。我希望调用看起来像AddPreferencesFromResource(R.Xmls.Preferences),但R.Xmls不存在。 xml文件夹包含preferences.xml,并存储在布局,菜单等资源文件夹旁边。但是生成的R.cs不包含Xmls的类。包含的示例项目没有使用PreferenceActivity的任何示例。任何人都可以确认Dot42中是否支持首选项吗?
答案 0 :(得分:1)
您的问题可能不是如何从XML填充首选项片段,而是更多如何将XML资源添加到dot42项目以及如何引用它。
通过向Visual Studio(dot42)项目添加XML文件来添加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;
}
}
}