如何创建更改用户密码的功能。 我仍然没有为更改密码的按钮和字段创建XML,让我知道如何做到这一点,我将进行研究。
继承我的数据库
LogInDataBase
package com.example.androidxxx;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
public class LoginDataBaseAdapter {
static final String DATABASE_NAME = "login.db";
static final int DATABASE_VERSION = 1;
public static final int NAME_COLUMN = 1;
static final String DATABASE_CREATE = "create table " + "LOGIN" + "( "
+ "ID" + " integer primary key autoincrement,"
+ "USERNAME text,PASSWORD text); ";
public SQLiteDatabase db;
private final Context context;
private DataBaseHelper dbHelper;
public LoginDataBaseAdapter(Context _context) {
context = _context;
dbHelper = new DataBaseHelper(context, DATABASE_NAME, null,
DATABASE_VERSION);
}
public LoginDataBaseAdapter open() throws SQLException {
db = dbHelper.getWritableDatabase();
return this;
}
public void close() {
db.close();
}
public SQLiteDatabase getDatabaseInstance() {
return db;
}
public void insertEntry(String userName, String password) {
ContentValues newValues = new ContentValues();
newValues.put("USERNAME", userName);
newValues.put("PASSWORD", password);
db.insert("LOGIN", null, newValues);
}
public int deleteEntry(String UserName) {
String where = "USERNAME=?";
int numberOFEntriesDeleted = db.delete("LOGIN", where,
new String[] { UserName });
return numberOFEntriesDeleted;
}
public String getSinlgeEntry(String userName) {
Cursor cursor = db.query("LOGIN", null, " USERNAME=?",
new String[] { userName }, null, null, null);
if (cursor.getCount() < 1) {
cursor.close();
return "NOT EXIST";
}
cursor.moveToFirst();
String password = cursor.getString(cursor.getColumnIndex("PASSWORD"));
cursor.close();
return password;
}
public void updateEntry(String userName, String password) {
ContentValues updatedValues = new ContentValues();
updatedValues.put("USERNAME", userName);
updatedValues.put("PASSWORD", password);
String where = "USERNAME = ?";
db.update("LOGIN", updatedValues, where, new String[] { userName });
}
}
我的主要活动
package com.example.androidxxx;
import android.app.Activity;
import android.app.Dialog;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity {
Button btnSignInStudent, btnSignInFaculty, btnSignInAdmin;
LoginDataBaseAdapter loginDataBaseAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
loginDataBaseAdapter = new LoginDataBaseAdapter(this);
loginDataBaseAdapter = loginDataBaseAdapter.open();
btnSignInStudent = (Button) findViewById(R.id.buttonSignINStudent);
btnSignInFaculty = (Button) findViewById(R.id.buttonSignINFaculty);
btnSignInAdmin = (Button) findViewById(R.id.buttonSignINAdmin);
}
public void signInStudent(View V1) {
final Dialog dialog = new Dialog(MainActivity.this);
dialog.setContentView(R.layout.login);
dialog.setTitle("Login");
final EditText editTextUserName = (EditText) dialog
.findViewById(R.id.editTextUserNameToLogin);
final EditText editTextPassword = (EditText) dialog
.findViewById(R.id.editTextPasswordToLogin);
Button btnSignInStudent = (Button) dialog.findViewById(R.id.buttonSignIn);
btnSignInStudent.setOnClickListener(new View.OnClickListener() {
public void onClick(View v1) {
String userName = editTextUserName.getText().toString();
String password = editTextPassword.getText().toString();
String storedPassword = loginDataBaseAdapter
.getSinlgeEntry(userName);
if (password.equals(storedPassword)) {
Toast.makeText(MainActivity.this,
"Congrats: Login Successfull", Toast.LENGTH_LONG)
.show();
dialog.dismiss();
Intent main = new Intent(MainActivity.this, MainActivity.class);
startActivity(main);
} else {
Toast.makeText(MainActivity.this,
"User Name or Password does not match",
Toast.LENGTH_LONG).show();
}
}
});
dialog.show();
}
public void signInFaculty(View V2) {
final Dialog dialog = new Dialog(MainActivity.this);
dialog.setContentView(R.layout.login);
dialog.setTitle("Login");
final EditText editTextUserName = (EditText) dialog
.findViewById(R.id.editTextUserNameToLogin);
final EditText editTextPassword = (EditText) dialog
.findViewById(R.id.editTextPasswordToLogin);
Button btnSignInFaculty = (Button) dialog.findViewById(R.id.buttonSignIn);
btnSignInFaculty.setOnClickListener(new View.OnClickListener() {
public void onClick(View v2) {
String userName = editTextUserName.getText().toString();
String password = editTextPassword.getText().toString();
String storedPassword = loginDataBaseAdapter
.getSinlgeEntry(userName);
if (password.equals(storedPassword)) {
Toast.makeText(MainActivity.this,
"Congrats: Login Successfull", Toast.LENGTH_LONG)
.show();
dialog.dismiss();
Intent main = new Intent(MainActivity.this, MainActivity.class);
startActivity(main);
} else {
Toast.makeText(MainActivity.this,
"User Name or Password does not match",
Toast.LENGTH_LONG).show();
}
}
});
dialog.show();
}
@Override
protected void onDestroy() {
super.onDestroy();
loginDataBaseAdapter.close();
}
}