android开发分享单页PreferenceActivity瓦特/无标题/片段?

我试图完成一些我认为很简单的工作,但是我很困惑如何使用PreferenceActivity类和xml首选项标记来完成它。

当用户点击应用程序设置图标时,我想让他们看到一个checkbox和列表的小列表。 我只有一个偏好片段。 到目前为止,我可以设置PreferenceActivity xml文件(preferences.xml和偏好片段xmls)来显示首选项片段的单个标头。 当用户select该标题的首选项屏幕正是我想要的,但是,我不能找出一种方法来跳过显示第一个标题屏幕。

点击设置/首选项图标显示一个单独的标题,然后点击以获得实际的设置/首选项似乎是一种浪费。

我明白,如果你想分类你的偏好,这可能是非常有帮助的,但是对于一些简单的事情来说,这会增加额外的开销,而且看起来相当笨拙。

我希望我很清楚。 总之这是我的问题:

什么是使用PreferenceActivity类和偏好标题标签简单地显示一个没有标题的选项屏幕的新的首选方式?

在环顾四周后,看起来好像我正在尝试做一些以前的方法直接做的事情。 我试图做到这一点,而不使用任何弃用的function。

在此先感谢,B.

    新的首选方法是显示一个PreferenceFragment作为任何活动的主要内容。 它不需要是PreferenceActivity 。 查看API演示示例

     public class FragmentPreferences extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Display the fragment as the main content. getFragmentManager().beginTransaction().replace(android.R.id.content, new PrefsFragment()).commit(); } public static class PrefsFragment extends PreferenceFragment { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Load the preferences from an XML resource addPreferencesFromResource(R.xml.preferences); } } } 

    我正在寻找与这个问题相匹配的答案。 最终,我从其他几个来源处理了这个问题。 对于那些可能还想要它回答的人来说,这是对我有用的。 (注意 – 在这个项目中min和target SDK都设置为15)。

    显示单个设置屏幕的首选项类。

     public class SettingsActivity extends PreferenceActivity { private final static String TAG = "SettingsAcitivity"; public SettingsActivity() {} @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); MyLog.d(TAG, "onCreate"); getFragmentManager().beginTransaction() .replace(android.R.id.content, new LocationFragment()).commit(); } public class LocationFragment extends PreferenceFragment { private final static String TAG = "LocationFragment"; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); MyLog.d(TAG, "onCreate"); addPreferencesFromResource(R.xml.locationsettings); } } } 

    显示设置的代码:

     @Override public boolean onOptionsItemSelected(MenuItem item) { MyLog.d(TAG, "onOptionsItemSelected"); switch (item.getItemId()) { case R.id.menu_main_help: break; case R.id.menu_main_about: break; case R.id.menu_main_settings: MyLog.d(TAG, "Settings"); Intent settingsIntent = new Intent(this, SettingsActivity.class); startActivity(settingsIntent); break; } return true; } 

    后退键终止SettingsActivity。 内置的优先例程保存任何更改。 我有一个getSettings()onResume函数更新调用活动(在这种情况下,MainActivity)使用的任何更改设置。

    而已。

    以上就是android开发分享单页PreferenceActivity瓦特/无标题/片段?相关内容,想了解更多android开发(异常处理)及android游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/addevelopment/514232.html

      (0)
      上一篇 2020年11月29日
      下一篇 2020年11月29日

      精彩推荐