Android preference-headers额外参数

时间:2014-01-19 07:58:38

标签: android xml android-preferences preferenceactivity

我正在使用标头构建首选项活动。在文档中,我看到每个extra条目都可以指定header个参数。在代码中,我想在设置活动中构建标题列表时访问这些额外的值,如下所示。请注意,我是通过重载onBuildHeaders而不是标题片段的活动来完成的。

if (header.extras != null && header.extras.containsKey("someKey")) {
    ...
}

但是,extras参数始终为null。有没有办法强制它被读入?

1 个答案:

答案 0 :(得分:5)

在您的header中添加您的额外内容,如下所示:

<header android:title="Display" >
  <extra
    android:name="separator"
    android:value="true" />
</header>

然后使用以下内容检索值:

    boolean isSeparator = false;
    Bundle extras = header.fragmentArguments;
    if (extras != null)
    {
      isSeparator = extras.containsKey("separator");
    }

请注意,您要使用header.fragmentArguments代替.extras字段。