【问题标题】:How to save show default value in edittext but then user input once they've entered it?如何在edittext中保存显示默认值,然后在用户输入后输入?
【发布时间】:2014-07-22 13:52:01
【问题描述】:

我对此并不陌生,并试图创建一个简单的 android 应用程序,其中第一个活动具有指向第二个活动中用户设置/输入的链接。在这里,我制作了一些 EditText,例如:“联系人姓名”,如下所示:

 <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:inputType="textPersonName"
        android:text="Name of Contact"
        android:ems="10"
        android:id="@+id/name"
        android:layout_marginTop="58dp"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true" />

我可以通过 sharedpreferences 保存它,但问题是,如何在用户下次进入活动屏幕时显示用户输入(在编辑文本中)?如果他们没有输入任何内容,请保留原始文本(此处:“联系人姓名”)?

更新: 感谢您的提示。但是,据我了解,显示器显示的是 XML 文件。因此,如果我从 java 文件中的 sharedpreferences 中调用保存的信息,我如何将其“传输”到 XML 文件中

谢谢大家

【问题讨论】:

  • 你已经回答了你的问题 sharedpreferences 只需实现它。将值保存在 onPause 方法中,并在 oncreate 中检查是否存在值,如果存在则显示文本。

标签: android xml android-studio


【解决方案1】:

对于初学者,使用属性android:hint="What is up?" 在字段为空时显示占位符文本。很难确切地说如何使用您提供的信息再次加载您的值,但要点是您应该以某种方式存储该值(共享首选项将起作用),然后在视图时再次检索该值呈现。

如果您使用 View Fragments,您可能会在 onCreateViewonResume 中执行此操作。在那些从共享首选项中读取的覆盖方法中,如果存在值,请将 EditText 文本属性设置为该值。

Fragment Documentation

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-12
    • 2021-11-09
    • 1970-01-01
    相关资源
    最近更新 更多