我希望用户能够为其文本视图中显示的字符串创建昵称。该应用程序将通过服务将字符串提供给活动,并将其显示在textview中。然后我希望用户能够昵称该字符串,这样每次再次显示字符串时,昵称将显示而不是原始字符串。
我的问题是,我可以使用共享首选项来执行此操作吗?用户能够分配昵称背后的逻辑是什么?如果你能指出任何文献或示例代码也会受到高度赞赏。感谢您的任何帮助。
答案 0 :(得分:1)
Algorhithm:
来自参考网站:http://developer.android.com/guide/topics/data/data-storage.html#pref
使用共享首选项
SharedPreferences类提供了一个通用框架,允许您保存和检索原始数据类型的持久键值对。您可以使用SharedPreferences保存任何原始数据:布尔值,浮点数,整数,长整数和字符串。这些数据将在用户会话中持续存在(即使您的应用程序被终止)。
用户首选项
共享偏好不是严格用于保存用户首选项,"例如用户选择的铃声。如果您对为应用程序创建用户首选项感兴趣,请参阅PreferenceActivity,它为您提供了一个Activity框架,供您创建用户首选项,该首选项将自动保留(使用共享首选项)。
要获取应用程序的SharedPreferences对象,请使用以下两种方法之一:
写入值:
以下示例在计算器中保存了对静音按键模式的偏好:
public class Calc extends Activity
{
public static final String PREFS_NAME = "MyPrefsFile";
@Override
protected void onCreate(Bundle state){
super.onCreate(state);
//...
// Restore preferences
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
boolean silent = settings.getBoolean("silentMode", false);
setSilent(silent);
}
@Override
protected void onStop()
{
super.onStop();
// We need an Editor object to make preference changes.
// All objects are from android.context.Context
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
SharedPreferences.Editor editor = settings.edit();
editor.putBoolean("silentMode", mSilentMode);
// Commit the edits!
editor.commit();
}
}