android - Dot42 - 如何从资源中填充首选项 fragment ?

标签 android xml android-resources preferenceactivity dot42

使用 Dot42 时,我似乎可以访问 PreferenceActivity 类的 AddPreferencesFromResource(int),但传递给此方法的资源对我不可用。我希望调用看起来像 AddPreferencesFromResource(R.Xmls.Preferences),但是 R.Xmls 不存在。 xml 文件夹包含 preferences.xml 并存储在布局、菜单等资源文件夹旁边。但是生成的 R.cs 不包含 Xmls 类。包含的示例项目没有任何使用 PreferenceActivity 的示例。有人可以确认 Dot42 是否支持首选项吗?

最佳答案

您的问题可能不是如何从 XML 填充首选项 fragment ,而是如何将 XML 资源添加到 dot42 项目以及如何引用它。

您可以像往常一样通过将 XML 文件添加到 Visual Studio (dot42) 项目来添加 XML 资源;这与将 XML 文件添加到非 dot42 项目没有什么不同。接下来,转到文件的属性并将 BuildAction 设置为 XmlResource。

enter image description here

请注意,dot42 没有文件夹结构要求(例如/res/xml/)。

当您现在再次编译并键入“R”时。你会看到智能与 R.Xmls 一起出现。

enter image description here

如果您查看 R.cs(在属性下),您将看到它现在包含 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;
        }
    }
}

关于android - Dot42 - 如何从资源中填充首选项 fragment ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19169595/

相关文章:

java - 如何使用 Regex 仅删除单词之间的空格而不删除数字或特殊字符之间的空格?

java - 错误 : Didn't find class android. view.menu(在路径上)

Android - 如果应用程序进入暂停状态(进入后台),是否会调用应用程序的 LeScanCallback?

java - 在两个相对文本字段上使用 TextChanged 监听器

java - Android XML 文件 java.lang.nullpointerexception

java - 解析 XML 文件中特定标签的内容 (Java)

java - 如何在航类从 xml 创建类和对象?

android - AVD 忽略布局大/文件

Android:启动画面分辨率

android - Intellij android 资源生成