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

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条回答 默认 最新

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

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

    点赞 1 评论

相关推荐