Android 将 Edittext 内容保存到 SharedPreferences 并读回

发布于 2024-09-10 08:44:46 字数 850 浏览 1 评论 0原文

在我的 xml 中,我的配置类中有一个像这样的 edittext 元素,

<EditText
android:id="@+id/hrvalue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="64"
android:textSize="18sp">
</EditText>

我想读取 edittext 的值并将其保存到变量中。 在编辑文本框中,用户将输入一个整数。 我编写了以下代码

SharedPreferences prefs = self.getSharedPreferences("prefs", 0);
SharedPreferences.Editor edit = prefs.edit();
EditText hrvalue = (EditText)findViewById(R.id.hrvalue);
edit.putString("hrvalue"+appWidgetId,hrvalue.getText().toString());
edit.commit();

我可以将编辑文本框中的值读取为整数吗?

现在我想在其他类中读取该值作为整数,但我不知道该怎么做。 共享首选项键、值对对我来说有点令人困惑。 我写的

int hrvalue=prefs.getInt("hrvalue"+appWidgetId,1);

是这样正确吗?这是从编辑文本中读取并将其添加到共享首选项的正确方法吗?编辑文本框的值存储在哪里? 我在复选框方面取得了成功,但在编辑文本方面尚未取得成功。

谢谢。

In my xml i have an edittext element like this

<EditText
android:id="@+id/hrvalue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="64"
android:textSize="18sp">
</EditText>

in my configuration class i want to read the value of the edittext and save it to a variable.
In the edittext box the user will be inputting a number integer.
I have wrote the following code

SharedPreferences prefs = self.getSharedPreferences("prefs", 0);
SharedPreferences.Editor edit = prefs.edit();
EditText hrvalue = (EditText)findViewById(R.id.hrvalue);
edit.putString("hrvalue"+appWidgetId,hrvalue.getText().toString());
edit.commit();

Could i read the value in the edittext box as integer?

Now I want to read the value as integer in my other class but i don't know how to do it.
The sharedpreferences key,value pairs is a bit confusing for me.
I wrote

int hrvalue=prefs.getInt("hrvalue"+appWidgetId,1);

Is this correct? Is that the correct way of reading from an edittext and adding it to sharedpreferences?Where is the value of an edittextbox stored?
I had success with checkbox but not yet with edittext.

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

多彩岁月 2024-09-17 08:44:46

如果要存储 int,请使用 putInt 而不是 putString。请参阅此文档。

Use putInt instead of putString if you want to store an int. See this documention.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文