weixin_45911667 2021-05-20 10:44 采纳率: 25%
浏览 61
已采纳

android 的sharedpreference 案例 用户名,密码的保存与调用,清除

虚拟机运行之后没效果,三个按钮的功能一个也不能用.

运行的虚拟机:

布局文件代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_share_preference"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    >
    <Button
        android:id="@+id/btn_Get"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_centerInParent="true"
        android:layout_marginTop="258dp"
        android:layout_marginEnd="160dp"
        android:layout_marginRight="160dp"
        android:text="获取" />
    <Button
        android:id="@+id/btn_Save"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginStart="37dp"
        android:layout_marginLeft="37dp"
        android:layout_marginTop="257dp"
        android:text="保存" />
    <Button
        android:id="@+id/btn_Clear"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_marginTop="260dp"
        android:layout_marginEnd="34dp"
        android:layout_marginRight="34dp"
        android:text="清除" />
    <EditText
        android:id="@+id/edit1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_marginTop="105dp"
        android:layout_marginEnd="25dp"
        android:layout_marginRight="25dp"
        android:ems="10"
        android:inputType="textPersonName"
        android:hint="姓名" />
    <EditText
        android:id="@+id/edit2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_marginTop="174dp"
        android:layout_marginEnd="22dp"
        android:layout_marginRight="22dp"
        android:ems="10"
        android:inputType="textPersonName"
        android:hint="密码" />
    <TextView
        android:id="@+id/textView4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginStart="79dp"
        android:layout_marginLeft="79dp"
        android:layout_marginTop="125dp"
        android:text="姓名:" />
    <TextView
        android:id="@+id/textView5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginStart="76dp"
        android:layout_marginLeft="76dp"
        android:layout_marginTop="197dp"
        android:text="密码:" />
</RelativeLayout>
SharePreferenceActivity代码
package com.example.myapplication;

import android.content.Context;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import androidx.appcompat.app.AppCompatActivity;

public class SharePreferenceActivity extends AppCompatActivity {
    
    private EditText meditText1 ,meditText2 ;
    private Button SaveBtn,GetBtn,ClearBtn;
    //声明Sharedpreferenced对象
    private SharedPreferences sp ;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_share_preference);

        meditText1= (EditText) findViewById(R.id.edit1);
        meditText2 = (EditText) findViewById(R.id.edit2);

        SaveBtn = (Button) findViewById(R.id.btn_Save);
        GetBtn = (Button) findViewById(R.id.btn_Get);
        ClearBtn = (Button) findViewById(R.id.btn_Clear);
    }

    public void Click(View view) {
        
        sp = getSharedPreferences("User", Context.MODE_PRIVATE);
        switch (view.getId()){
            case R.id.btn_Save:
                //获取到edit对象
                SharedPreferences.Editor edit = sp.edit();
                //通过editor对象写入数据
                edit.putString("ValueName",meditText1.getText().toString().trim());
                edit.putString("ValuePass",meditText2.getText().toString().trim());
                //提交数据存入到xml文件中
                edit.commit();
                break;
            case R.id.btn_Get:
                
                String value1 = sp.getString("ValueName","默认名:路明非");
                String value2 = sp.getString("ValuePass","默认密码:1234");
                meditText1.setText(value1);
                meditText2.setText(value2);
                break;
            case R.id.btn_Clear:
                meditText1.setText("");
                meditText2.setText("");
                break;
        }
    }
}

跪求大神解答!!!!

 

 

 

  • 写回答

1条回答 默认 最新

  • 雕·不懒惰 2021-05-20 11:12
    关注
    Click(View view)都没有调用怎么生效

    仔细看看控件的点击事件应该怎么写

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥15 绘制多分类任务的roc曲线时只画出了一类的roc,其它的auc显示为nan
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?