80,351
社区成员
发帖
与我相关
我的任务
分享
package com.amaker.wlo;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import com.amaker.util.HttpUtil;
public class LoginActivity extends Activity {
// 声明登录、取消按钮
private Button cancelBtn,loginBtn;
// 声明用户名、密码输入框
private EditText userEditText,pwdEditText;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 设置标题
setTitle("掌中宝无线订餐系统-用户登录");
// 设置当前Activity界面布局
setContentView(R.layout.login_system);
// 通过findViewById方法实例化组件
cancelBtn = (Button)findViewById(R.id.cancelButton);
// 通过findViewById方法实例化组件
loginBtn = (Button)findViewById(R.id.loginButton);
// 通过findViewById方法实例化组件
userEditText = (EditText)findViewById(R.id.userEditText);
// 通过findViewById方法实例化组件
pwdEditText = (EditText)findViewById(R.id.pwdEditText);
cancelBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
loginBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(validate()){
if(login()){
Intent intent = new Intent(LoginActivity.this,MainMenuActivity.class);
startActivity(intent);
}else{
showDialog("用户名称或者密码错误,请重新输入!");
}
}
}
});
}
// 登录方法
private boolean login(){
// 获得用户名称
String username = userEditText.getText().toString();
// 获得密码
String pwd = pwdEditText.getText().toString();
// 获得登录结果
String result=query(username,pwd);
if(result!=null&&result.equals("0")){
return false;
}else{
saveUserMsg(result);
return true;
}
}
// 将用户信息保存到配置文件
private void saveUserMsg(String msg){
// 用户编号
String id = "";
// 用户名称
String name = "";
// 获得信息数组
String[] msgs = msg.split(";");
int idx = msgs[0].indexOf("=");
id = msgs[0].substring(idx+1);
idx = msgs[1].indexOf("=");
name = msgs[1].substring(idx+1);
// 共享信息
SharedPreferences pre = getSharedPreferences("user_msg", MODE_WORLD_WRITEABLE);
SharedPreferences.Editor editor = pre.edit();
editor.putString("id", id);
editor.putString("name", name);
editor.commit();
}
// 验证方法
private boolean validate(){
String username = userEditText.getText().toString();
if(username.equals("")){
showDialog("用户名称是必填项!");
return false;
}
String pwd = pwdEditText.getText().toString();
if(pwd.equals("")){
showDialog("用户密码是必填项!");
return false;
}
return true;
}
private void showDialog(String msg){
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage(msg)
.setCancelable(false)
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
}
});
AlertDialog alert = builder.create();
alert.show();
}
// 根据用户名称密码查询
private String query(String account,String password){
// 查询参数
String queryString = "account="+account+"&password="+password;
// url
String url = HttpUtil.BASE_URL+"servlet/LoginServlet?"+queryString;
// 查询返回结果
return HttpUtil.queryStringForPost(url);
}
}