我正在申请注册程序。字段是“徽章ID(用户名)”和“密钥(密码)”。在过程开始时,我将从共享首选项中设置两个输入值。我希望我的应用程序有这两个值。当我们尝试给出下两个值(或编辑这个值)时,会显示一个像“已经使用过的徽章一样的祝酒词。试试'输入这里!'” 我该如何实现这些?
Toast.makeText(getApplicationContext(), "Badge already taken.Try 'Enter Here !'", Toast.LENGTH_LONG).show();
答案 0 :(得分:1)
您可以使用SharedPreferences.contains(String key)
来测试您的共享偏好设置是否已存储用户名或密码。
我建议您不要向用户抱怨更改名称或密码,而只是禁用或删除任何允许用户进行更改的UI元素。
例如,你可以在onCreate
中执行类似的操作:
SharedPreferences prefs = PreferenceManager
.getDefaultSharedPreferences(getContext());
if (prefs.contains(KEY_USERNAME)) {
// name (and password, presumably) already stored
// disable/hide appropriate UI elements
} else {
// no user name stored
// enable/show elements that allow user to make changes
}
根据上述逻辑,您甚至可以决定在setContentView
的调用中使用完全不同的布局。