android开发学习之 简单的demo SharedPreferences 的登陆账号密码保存和按键退出提醒

//登陆界面

package com.example.firstproject;

import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.util.Log;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;

public class Login_Activity extends ActionBarActivity {

    private EditText userName_edt, passWard_edt;
    private FileHelper fileHelper;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.login_main);
        findView();
    }

    public void findView() {
        userName_edt = (EditText) findViewById(R.id.username_edt);
        passWard_edt = (EditText) findViewById(R.id.userpassward_edt);
    }

    // 采用onclick 去确定点击事件
    public void choose(View view) {
        switch (view.getId()) {
        case R.id.cancel_btn:
            this.finish();
            break;
        case R.id.confirm_btn:
            confirm();//调用confir()
            break;
        }

    }

    public void confirm() {
        String userName;
        String userPassward;
        userName = userName_edt.getText().toString();//得到用户名
        userPassward = passWard_edt.getText().toString();//用户密码
        if (!userPassward.equals("") || !userName.equals("")) {
//            Log.i("tag", "userName " + userName + " userPassward "+ userPassward);
            fileHelper = new FileHelper();//引用fileheloper自定义类
            fileHelper.saveInfoDates(Login_Activity.this, userName,userPassward);
            //跳转
            Intent intent = new Intent(Login_Activity.this, MainActivity.class);
            startActivity(intent);
            finish();//结束当前的activity
        } else {
            //toast的使用 显示提示信息
            Toast.makeText(this, "用户名或密码不能为空", Toast.LENGTH_SHORT).show();
        }

    }

}

//主acticity

package com.example.firstproject;

import android.support.v7.app.ActionBarActivity;
import android.util.Log;
import android.view.KeyEvent;
import android.widget.TextView;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;

public class MainActivity extends ActionBarActivity {

    TextView textview, textview1;
    FileHelper fileHelper;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        textview = (TextView) findViewById(R.id.textview);
        textview1 = (TextView) findViewById(R.id.textview1);
        fileHelper = new FileHelper();
        Log.i("tag", "fileHelper.getUserName().toString()"
                + fileHelper.getUserName(this).toString());
        textview.setText(fileHelper.getUserName(this));
        textview1.setText(fileHelper.getUserPassward(this));
        Log.i("tag", "");
    }

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (event.getKeyCode() == KeyEvent.KEYCODE_BACK) {
            AlertDialog.Builder builder = new Builder(MainActivity.this);
            builder.setTitle("提示");
            builder.setMessage("是否确认退出");
            builder.setPositiveButton("确定", new OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    dialog.dismiss();
                    MainActivity.this.finish();
                }
            });
            builder.setNegativeButton("取消", new OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    dialog.dismiss();
                }
            });
            builder.create().show();
        }
        return super.onKeyDown(keyCode, event);
    }

}

//文件保存类

package com.example.firstproject;


import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.util.Log;


public class FileHelper {
    
    private String saveInfo = "userInfo";
    public void saveInfoDates(Context acontext,String userName,String userPassward){
        Log.i("tag","数据存储开始");
        SharedPreferences info =acontext.getSharedPreferences(saveInfo,Context.MODE_PRIVATE);
        Editor edit = info.edit();
        edit.putString("username", userName);
        edit.putString("userPassward", userPassward);
        edit.commit();    
    }
    
    public String getUserName(Context acontext){
        SharedPreferences info =acontext.getSharedPreferences(saveInfo,Context.MODE_PRIVATE);
        return info.getString("username", "");
        
    }
    public String getUserPassward(Context acontext){
        SharedPreferences info =acontext.getSharedPreferences(saveInfo,Context.MODE_PRIVATE);
        return info.getString("userPassward", "");    
    }
    
    
}

源码下载地址http://pan.baidu.com/s/1mgkMr1I

大家可以自己看看,欢迎大家共同探讨。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android登录注册功能在应用程序中很常见,我们可以使用SharedPreferences和SQLite数据库来保存用户的登录信息。同时,还可以实现头像上传和显示功能。 首先,登录注册功能可以通过SharedPreferences来实现。在注册过程中,我们将用户输入的用户名和密码保存SharedPreferences中。在登录过程中,我们将用户输入的用户名和密码与SharedPreferences保存的数据进行比对,以验证用户输入的正确性。 另一种实现方式是使用SQLite数据库来保存用户的登录信息。在注册过程中,我们将用户输入的用户名和密码保存到SQLite数据库表中的相应字段。在登录过程中,我们通过查询数据库中的数据,以验证用户输入的正确性。 头像上传和显示功能可以通过网络通信来实现。在用户注册或登录成功后,我们可以提供上传头像的选项。用户选择一个本地的头像文件后,我们可以将该文件通过网络上传到服务器上进行保存。在用户登录后,我们可以从服务器上获取该用户的头像,并在应用程序中显示出来。 为了实现头像上传和显示功能,我们可以使用第三方库或者自己编写相关的网络通信代码。在上传头像时,我们需要将头像文件进行编码和拆分,然后将每一部分通过HTTP请求发送到服务器上进行保存。在显示头像时,我们需要从服务器上下载头像文件,并将其显示在应用程序的合适位置上。 总之,Android登录注册功能可以通过SharedPreferences和SQLite来保存用户的登录信息。而头像上传和显示功能则可以通过网络通信来实现。这样用户就可以方便地注册登录,并上传和显示头像了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值