android__实践(登陆界面)
来源:互联网 发布:stm32f 输入端口写法 编辑:程序博客网 时间:2024/06/06 02:06
activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context="com.example.login.MainActivity" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/user" /> <EditText android:id="@+id/et_username" android:layout_width="fill_parent" android:layout_height="wrap_content" android:inputType="text" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/password" /> <EditText android:id="@+id/et_password" android:layout_width="fill_parent" android:layout_height="wrap_content" android:inputType="textPassword" /> <RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content" > <CheckBox android:id="@+id/cb_remember_pwd" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/rempassword" android:checked="true" /> <Button android:id="@+id/bt_login" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/login" android:onClick="login" android:layout_alignParentRight="true" /> </RelativeLayout></LinearLayout>
MainActivity.java
package com.example.login;import java.util.Map;import android.app.Activity;import android.os.Bundle;import android.text.TextUtils;import android.util.Log;import android.view.View;import android.widget.CheckBox;import android.widget.EditText;import android.widget.Toast;import com.example.login.service.LoginService;public class MainActivity extends Activity { private static final String tag = "MainActivity"; private EditText et_username; private EditText et_password; private CheckBox cb; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et_username = (EditText) this.findViewById(R.id.et_username); et_password = (EditText) this.findViewById(R.id.et_password); cb = (CheckBox) this.findViewById(R.id.cb_remember_pwd); //检查是否有保存的用户名和密码数据 Map<String, String> map = LoginService.getSaveUserInfo(this); if(map !=null){ et_username.setText(map.get("username")); et_password.setText(map.get("userpassword")); } } // 登陆控件 public void login(View view) { String name = et_username.getText().toString().trim(); String pass = et_password.getText().toString().trim(); if (TextUtils.isEmpty(name) || TextUtils.isEmpty(pass)) { Toast.makeText(this, "用户名或密码不能为空", Toast.LENGTH_SHORT).show(); return; } else { // 判断是否保存密码 if (cb.isChecked()) { // 保存用户和密码 Log.i(tag, "需要保存用户名和密码"); boolean result = LoginService.saveUserInfo(this,name, pass); if(result){ Toast.makeText(this, "用户名和密码保存成功", Toast.LENGTH_SHORT).show(); } } // 登陆 发送信息到服务器,服务喊叫验证是否正确 if ("zhangsan".equals(name) && "123".equals(pass)) { Toast.makeText(this, "登陆成功", 0).show(); } else { Toast.makeText(this, "用户名或密码错误", Toast.LENGTH_SHORT).show(); } } }}
LoginService.java
package com.example.login.service;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStreamReader;import java.util.HashMap;import java.util.Map;import android.content.Context;/* * * 登录服务 * * * * **/public class LoginService { /** * 传入一个上下文:Context * 保存用户名和密码的方法 * * */ public static boolean saveUserInfo(Context context ,String username,String password){ try{ //File file = new File("/data/data/com.example.login/info.text"); //返回一个目录:/data/data/包名/files/ File file = new File(context.getFilesDir(),"info.text"); FileOutputStream fos = new FileOutputStream(file); fos.write((username+"###"+password).getBytes()); fos.close(); return true; }catch(Exception e){ return false; } } /** * * 获取保存的数据 * * * **/ public static Map<String,String> getSaveUserInfo(Context context){ //获取文件对象 File file = new File(context.getFilesDir(),"info.text"); try{ FileInputStream fis = new FileInputStream(file); BufferedReader br = new BufferedReader(new InputStreamReader(fis)); String str = br.readLine(); String[] infos = str.split("###"); Map<String, String> map = new HashMap<String,String>(); map.put("username", infos[0]); map.put("userpassword", infos[1]); return map; }catch(Exception e){ e.printStackTrace(); return null; } }}
0 0
- android__实践(登陆界面)
- android__实践(短信发送器)
- android__实践(电话拨号器)
- Android开发实践(五)App的登陆界面
- CocosStudio(十四)登陆界面
- Qt 登陆(界面)功能设计
- 登陆界面
- 登陆界面
- 登陆界面
- 登陆界面
- 登陆界面
- 登陆界面
- 登陆界面
- 登陆界面
- 登陆界面
- 登陆界面
- 登陆界面
- 登陆界面
- Poj3126
- 在MFC单文档程序中,怎样由子窗口控件调用父窗口中的控件
- CERC-2014 K题 - The Imp (博弈DP)
- 以小组形式利用testlink测试软件项目
- centos 6.5下安装中文输入法
- android__实践(登陆界面)
- 制作第一个网页的代码
- UVA_11039_BuildingDesigning
- C++--------------------------------------------运算符重载
- 手机cpu厂商和手机cpu架构
- 【闲叙】Java由来
- Android中的隐藏API和Internal包的使用
- 黑马程序员之反射与正则
- 求N!的末尾0的个数