如何使用preferencesResId而不是addPreferencesFromResource

时间:2013-01-25 20:00:03

标签: android

我刚开始研究android,所以有一些问题

我有一个文件res / xml / settings.xml - 菜单中的设置 创建类Prefs并尝试使用上面文件中的设置

package org.example.sudoku;

import android.os.Bundle;
import android.preference.PreferenceActivity;

public class Prefs extends PreferenceActivity {
       @Override
       protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          addPreferencesFromResource(R.xml.settings);
       }
    }

问题,addPreferencesFromResource无法使用,我需要使用preferencesResId(根据评论),但如果我写这样的东西

     preferencesResId(R.xml.settings);

它不好。

代码中的错误在哪里?可以帮忙吗? 此外,我尝试使用书籍 - Hello Android来学习android。

1 个答案:

答案 0 :(得分:0)

preferencesResId()不是一种方法,它是您的资源ID(R.xml.settings)的对话中的占位符。

所以虽然

addPreferencesFromResource(R.xml.settings);

不推荐使用,如果您使用这种方法,这仍然是最正确的方法 - 没有其他方法可以使用已弃用的方法。

我建议您查看this问题 - 它会告诉您应该使用什么(PreferenceFragments)。如果您需要代码示例,请启动Eclipse和ADT插件,并通过SettingsActivity向导生成new Activity

和往常一样,这里是PreferenceActivity的完整JavaDoc。