deth
28/08/15, 19:03:59
hola amigos quiero hacer un checkbox que me permita recordar el usuario y la contraseña de mi login en android pero ya he intentado todo y no puedo hacerlo, el checkbox cuando este activo debera recordar los datos y cuando este inactivo dejara de recordarlos, aqui les dejo mi codigo:
login.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<EditText
android:id="@+id/editTextUserNameToLogin"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="Usuario" >
<requestFocus />
</EditText>
<EditText
android:id="@+id/editTextPasswordToLogin"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="Clave"
android:inputType="textPassword" />
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Recordar Datos" />
<Button
android:id="@+id/buttonSignIn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Aceptar" />
</LinearLayout>
HomeActivity.java
package com.techblogon.loginexample;
import android.app.Activity;
import android.app.Dialog;
import android.content.Intent;
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;
public class HomeActivity extends Activity
{
Button (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+butto n) btnSignIn,btnSignUp;
LoginDataBaseAdapter loginDataBaseAdapter;
override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+butto n) close_Button = (Button (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+butto n)) findViewById(R.id.close_Button);
close_Button.setOnClickListener(new OnClickListener() {
override
public void onClick(View (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+view) v) {
finish();
}
});
// create a instance of SQLite Database
loginDataBaseAdapter=new LoginDataBaseAdapter(this);
loginDataBaseAdapter=loginDataBaseAdapter.open();
// Get The Refference Of Buttons
btnSignIn=(Button (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+butto n))findViewById(R.id.buttonSignIN);
btnSignUp=(Button (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+butto n))findViewById(R.id.buttonSignUP);
// Set OnClick Listener on SignUp button
btnSignUp.setOnClickListener(new View (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+view) .OnClickListener() {
public void onClick(View (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+view) v) {
// TODO Auto-generated method stub
/// Create Intent for SignUpActivity and Start The Activity
Intent intentSignUP=new Intent(getApplicationContext(),SignUPActivity.clas s);
startActivity(intentSignUP);
}
});
}
// Methos to handleClick Event of Sign In Button
public void signIn(View (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+view) V)
{
final Dialog (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+dialo g) dialog = new Dialog (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+dialo g)(HomeActivity.this);
dialog.setContentView(R.layout.login);
dialog.setTitle("Ingresar");
// get the Refferences of views
final EditText editTextUserName=(EditText)dialog.findViewById(R.i d.editTextUserNameToLogin);
final EditText editTextPassword=(EditText)dialog.findViewById(R.i d.editTextPasswordToLogin);
Button (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+butto n) btnSignIn=(Button (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+butto n))dialog.findViewById(R.id.buttonSignIn);
// Set On ClickListener
btnSignIn.setOnClickListener(new View (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+view) .OnClickListener() {
public void onClick(View (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+view) v) {
// get The User name and Password
String (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+strin g) userName=editTextUserName.getText().toString();
String (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+strin g) password=editTextPassword.getText().toString();
// fetch the Password form database for respective user name
String (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+strin g) storedPassword=loginDataBaseAdapter.getSinlgeEntry (userName);
// check if the Stored password matches with Password entered by user
if(password.equals(storedPassword))
{
Toast.makeText(HomeActivity.this, "Ingreso Satifactorio", Toast.LENGTH_LONG).show();
dialog.dismiss();
}
else
{
Toast.makeText(HomeActivity.this, "Usuario O Clave Erronea", Toast.LENGTH_LONG).show();
}
}
});
dialog.show();
}
override
protected void onDestroy() {
super.onDestroy();
// Close The Database
loginDataBaseAdapter.close();
}
}
muchas gracias de antemano.
login.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<EditText
android:id="@+id/editTextUserNameToLogin"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="Usuario" >
<requestFocus />
</EditText>
<EditText
android:id="@+id/editTextPasswordToLogin"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:hint="Clave"
android:inputType="textPassword" />
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Recordar Datos" />
<Button
android:id="@+id/buttonSignIn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Aceptar" />
</LinearLayout>
HomeActivity.java
package com.techblogon.loginexample;
import android.app.Activity;
import android.app.Dialog;
import android.content.Intent;
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;
public class HomeActivity extends Activity
{
Button (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+butto n) btnSignIn,btnSignUp;
LoginDataBaseAdapter loginDataBaseAdapter;
override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+butto n) close_Button = (Button (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+butto n)) findViewById(R.id.close_Button);
close_Button.setOnClickListener(new OnClickListener() {
override
public void onClick(View (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+view) v) {
finish();
}
});
// create a instance of SQLite Database
loginDataBaseAdapter=new LoginDataBaseAdapter(this);
loginDataBaseAdapter=loginDataBaseAdapter.open();
// Get The Refference Of Buttons
btnSignIn=(Button (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+butto n))findViewById(R.id.buttonSignIN);
btnSignUp=(Button (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+butto n))findViewById(R.id.buttonSignUP);
// Set OnClick Listener on SignUp button
btnSignUp.setOnClickListener(new View (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+view) .OnClickListener() {
public void onClick(View (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+view) v) {
// TODO Auto-generated method stub
/// Create Intent for SignUpActivity and Start The Activity
Intent intentSignUP=new Intent(getApplicationContext(),SignUPActivity.clas s);
startActivity(intentSignUP);
}
});
}
// Methos to handleClick Event of Sign In Button
public void signIn(View (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+view) V)
{
final Dialog (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+dialo g) dialog = new Dialog (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+dialo g)(HomeActivity.this);
dialog.setContentView(R.layout.login);
dialog.setTitle("Ingresar");
// get the Refferences of views
final EditText editTextUserName=(EditText)dialog.findViewById(R.i d.editTextUserNameToLogin);
final EditText editTextPassword=(EditText)dialog.findViewById(R.i d.editTextPasswordToLogin);
Button (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+butto n) btnSignIn=(Button (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+butto n))dialog.findViewById(R.id.buttonSignIn);
// Set On ClickListener
btnSignIn.setOnClickListener(new View (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+view) .OnClickListener() {
public void onClick(View (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+view) v) {
// get The User name and Password
String (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+strin g) userName=editTextUserName.getText().toString();
String (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+strin g) password=editTextPassword.getText().toString();
// fetch the Password form database for respective user name
String (http://www.google.com/search?hl=en&q=allinurl%3Adocs.oracle.com+javase+docs+api+strin g) storedPassword=loginDataBaseAdapter.getSinlgeEntry (userName);
// check if the Stored password matches with Password entered by user
if(password.equals(storedPassword))
{
Toast.makeText(HomeActivity.this, "Ingreso Satifactorio", Toast.LENGTH_LONG).show();
dialog.dismiss();
}
else
{
Toast.makeText(HomeActivity.this, "Usuario O Clave Erronea", Toast.LENGTH_LONG).show();
}
}
});
dialog.show();
}
override
protected void onDestroy() {
super.onDestroy();
// Close The Database
loginDataBaseAdapter.close();
}
}
muchas gracias de antemano.