如何为android 2.X使用addPreferencesFromResource?

遵循几个howto,但我不明白,
如何使用addPreferencesFromResource(R.xml.preferences)因为已被弃用。

最好的方法是使用fragment但片段只能在3.0以后才可用,我需要为android 2.x版本做

我将遵循哪种方式?


在Android中,“已弃用”意味着“我们有另一个我们认为应该考虑的解决方案”。 特别是对于这样的情况,除了在Android 2.x上使用addPreferencesFromResource() ,没有其他选择,因为onBuildHeaders() (API Level 11+中使用的方法)不存在。

您可以创建支持以下两者的代码:

public class EditPreferences extends SherlockPreferenceActivity {
  @SuppressWarnings("deprecation")
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    if (Build.VERSION.SDK_INT<Build.VERSION_CODES.HONEYCOMB) {
      addPreferencesFromResource(R.xml.preferences);
      addPreferencesFromResource(R.xml.preferences2);
    }
  }

  @Override
  public void onBuildHeaders(List<Header> target) {
    loadHeadersFromResource(R.xml.preference_headers, target);
  }
}

在这里,我们使用onBuildHeaders()的API等级11+和addPreferencesFromResource()的API等级10及以下。 以下是从中拉取代码的完整示例项目。

链接地址: http://www.djcxy.com/p/66251.html

上一篇: how to use addPreferencesFromResource for android 2.X?

下一篇: UIButton does not work in uiscrollView