0

我在sharedpreferences中插入了值,现在不知道如何在TextView中显示这些值。

SharedPreferences prefs = getSharedPreferences(SharedPrefName, 0);
        SharedPreferences.Editor prefsEditor = prefs.edit();

        float importo = prefs.getFloat( "Importo", 0 );
        float valore = Float.parseFloat( mImporto.getText().toString() );
        prefsEditor.putFloat( "Importo", importo + valore );
        prefsEditor.commit();
4

5 回答 5

1

首先让我们尝试在 SharedPreferences 中保存一些东西,我正在使用一种方法,因为这种方法很容易理解,而且看起来很酷:P

在课堂上添加:

private SharedPreferences settings;
private static final String PREFS_NAME = "app_name";

private TextView usernameTextView;
private TextView passwordTextView;


init textviews...

usernameTextView = (TextView)...
passwordTextView= (TextView)...

在构造函数中添加:

settings = context.getSharedPreferences(
            PREFS_NAME, 0);

--保存用户名和密码

    public static final String USERNAME = "username";
    public static final String PASSWORD= "password";

    private void savePreferences(String sharedUsername, String sharedPassword) {

    SharedPreferences.Editor SharedEditor = settings.edit();
    SharedEditor.putString(USERNAME,
            sharedUsername);
    SharedEditor.putString(PASSWORD,
            sharedPassword);
    SharedEditor.commit();

}

--在文本视图中加载并显示用户名和密码

    private void loadSharedPreferences() { 
    if (settings != null) {
        String loadUsername= settings.getString(
                USERNAME , null);
        if (loadUsername != null && !loadUsername.isEmpty()) {
            usernameTextView.setText(loadUsername);
        }
        String loadPassword= settings.getString(
                PASSWORD, null);
        if (loadPassword!= null && !loadPassword.isEmpty()) {
            passwordTextView.setText(loadPassword);
        }
    }
}

希望你使用它。干杯

于 2013-09-05T19:03:48.217 回答
0

这取决于您要在哪里设置值。如果您只想在保存后设置值SharedPreference,那么您可以简单地执行以下操作:

TextView YourTextView = (TextView) findViewById(R.id.tv);
YourTextView.setText(String.valueOf(importo + valore) );

如果您想在其他类中设置它,那么您可以从中获取值SharedPreferencce并设置在 in 中TextView。有关如何获取值的信息,请参阅如何在 Android 中使用 SharedPreferences 来存储、获取和编辑值。然后在您提取值后,您可以按照我在上面的示例中显示的方式设置它。

于 2013-09-05T18:45:17.500 回答
0

假设您的意思是您需要以不同的方式检索这些值Activity,您可以使用类似的方式检索这些值

SharedPreferences values = getSharedPreferences(SharedPrefName, 0);
float  valore = values .getFloat("Importo", 0);

然后获取String值并设置您的TextView或只是做

textView.setText("" + valore);

文档有一个很好的例子

SharedPreferences 完整文档

于 2013-09-05T18:45:23.683 回答
0

只需在您的布局中找到您的文本视图:

  TextView tv = (TextView)view.findViewById(R.id.yourtextview);
  tv.setText("your value");
于 2013-09-05T18:43:52.747 回答
0

来自 Sharedprefrences 的第一个 getValue :

浮点值 = prefs.getFloat("Importo", 0);

在你的文本视图中设置浮点值:

textview.setText(String.valueOf(value));

于 2013-09-05T18:52:47.257 回答