package com.xxxx.xxxx.activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
import android.os.Bundle;
import android.preference.ListPreference;
import android.preference.Preference;
import android.preference.PreferenceManager;
import android.preference.PreferenceScreen;
import android.preference.Preference.OnPreferenceChangeListener;
import android.preference.EditTextPreference;
import android.util.Log;
import android.widget.Toast;
import com.xxxx.xxxx.R;
/**
*
* 个人设置
*
*/
public class PreferenceActivity extends android.preference.PreferenceActivity implements OnPreferenceChangeListener
{
private static final String TAG = "PreferenceActivity";
private Context mCtx;
private SharedPreferences mPreferences;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preference);
mCtx = this;
mPreferences = PreferenceManager.getDefaultSharedPreferences(mCtx);
}
@Override
public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference)
{
preference.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
String key=preference.getKey();
if(key.equals("editkey")){
//动态改变summary的值
if(((String) newValue).trim().equals(""))
preference.setSummary(R.string.xxxx);
else
preference.setSummary(getResources().getString(R.string.xxxx)+newValue);
}else if(key.equals("listkey")){
preference.setSummary(getResources().getString(R.string.xxxx)+newValue);
}
return true;
}
});
return true;
}
}
分享到:
相关推荐
通过<EditTextPreference>标签定义,可以设置title(显示的文本)、summary、key以及对话框中的hint(输入提示)等属性。 5. **ListPreference**: 这个组件提供了一个下拉列表供用户选择。开发者可以预先定义好一...
这个类使得开发者能够使用XML布局文件来定义各种偏好设置项,如开关、选择列表、输入框等,并将它们动态地加载到一个Activity中。在Android开发中,处理用户设置和首选项时,PreferenceActivity扮演着重要的角色。 ...
开发者可以通过SharedPreferences接口来读取和修改PreferenceActivity中的设置值。 创建一个PreferenceActivity主要包括以下几个步骤: 1. 在Android项目的res/xml目录下创建一个新的XML文件,但选择的模板应为...
标题与描述均提及了《Android中PreferenceActivity详解》,这一主题涉及了Android开发中关于用户偏好设置的核心组件——PreferenceActivity的深入解析。以下是基于标题、描述、标签以及部分内容的关键知识点总结,...
3. `ListPreference`的`entries`数组定义了显示在列表中的选项,而`entryValues`数组定义了与每个选项对应的值,这些值会在设置改变时被保存。 在老项目中回顾PreferenceActivity,意味着可能需要考虑兼容旧版本的...
由于其高度定制性和灵活性,PreferenceActivity在Android开发中被广泛应用。 #### 二、数据存储方式 PreferenceActivity中的数据存储主要依赖于 **SharedPreferences** ,这是一种轻量级的数据存储机制,适用于...
在PreferenceActivity中,可以通过实现`OnPreferenceChangeListener`接口来监听配置项的变化。 - **实现步骤**: 1. 在Activity中注册一个监听器。 2. 当配置项变化时,监听器会调用`onPreferenceChange`方法。 ...
包含`key`、`title`、`summary`、`dialogTitle`(对话框标题)、`entries`(显示在列表中的文本数组)和`entryValues`(实际值的数组)属性。 4. **PreferenceScreen**: 不是一个界面组件,而是一个容器,用于...
在Android开发中,PreferenceActivity配合一系列的Preference子类,如CheckBoxPreference、EditTextPreference、ListPreference和RingtonePreference,可以轻松构建各种常见的设置选项。以下是对这些组件的详细介绍...
`android:entries`属性定义可见的选项列表,`android:entryValues`则为每个选项对应的值,这些值会存储在SharedPreferences中。 在`PrefereceActivity`中,我们通常会通过XML布局文件定义`Preference`。例如,创建...
在Android开发中,Preference是用来构建用户界面中设置页面的关键组件,它允许用户通过简单的交互来改变应用的配置或设置。本篇文章将详细讲解如何在Android中使用各种类型的Preference,特别是ListPreference。 ...
在示例代码中,`MyPreferencesActivity`展示了如何创建和使用ListPreference,用户选择省份后,对应的值会保存在后台。 3. **EditTextPreference**:允许用户输入文本作为设置值,通常用于保存文本型的设置项。 4....
2. ListPreference:ListPreference允许用户从预定义的列表中选择一个值。这适用于需要用户从多个选项中进行选择的情况,如语言设置或主题选择。 3. EditTextPreference:用于输入文本信息,例如用户名或者密码。...