Android实战(一)学习了多个控件实现登录及记住密码功能

首先确定一下需要的控件:

两个EditText:用于输入账号和密码

一个button:用于登录查看账号和密码是否正确

一个checkbox:用于记住密码和账户

一个Androidstudio:用于编写代码,当然牛逼的人也推荐使用记事本写代码,废话不多说开工。

 

创建一个App项目加入两个布局两份Java.class ,在Androidmanifest.xml里面注册第二个布局。

准备完毕

1、在初始布局中加入上述控件,并为其设置好id

代码如下所示

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.administrator.app.MainActivity">

<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="用户名"
android:id="@+id/editText"
/>

<EditText
android:password="true"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="密码"
android:id="@+id/password"
/>

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"

android:text="登录"
android:id="@+id/button" />

<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="记住密码"
android:id="@+id/remember_password"
/>

</LinearLayout>


2、修改对应布局文件的Java文件代码如下所示

public class MainActivity extends AppCompatActivity {
private SharedPreferences pref;
private SharedPreferences.Editor editor;
private EditText accountEdit;
private EditText passwordEdit;
private Button login;
private CheckBox rememberPass;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

pref = PreferenceManager.getDefaultSharedPreferences(this);
accountEdit = (EditText) findViewById(R.id.editText);
passwordEdit = (EditText) findViewById(R.id.password);
rememberPass = (CheckBox) findViewById(R.id.remember_password);
login = (Button) findViewById(R.id.button);

boolean isRemember = pref.getBoolean ("remember_password",false);
if (isRemember) {
//将文本设置到文本框中
String account = pref.getString("account","");
String password = pref.getString("password","");
accountEdit.setText(account);
passwordEdit.setText(password);
rememberPass.setChecked(true);}
login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String account = accountEdit.getText().toString();
String password = passwordEdit.getText().toString();
if (account.equals("1489259653") && password.equals("123456")) {
editor = pref.edit();
if (rememberPass.isChecked()){
editor.putBoolean("remember_password",true);
editor.putString("account",account);
editor.putString("password",password);


} else { editor.clear();}
editor.commit();
Intent w = new Intent(MainActivity.this,second.class);
startActivity(w);
finish();
}else{
Toast.makeText(MainActivity.this,"账号或密码错误",Toast.LENGTH_SHORT).show();
}
}
});



}
具体就可以开始跑了
其中每个控件都看得懂,不懂再联系我QQ1489259653
代码最好自己敲一遍,不能复制粘贴,只有真正打了一遍才是你的代码,不是我小气而是为了让你加深记忆,好吗。
如果你觉得对你有帮助请顶一下,,,,
如有雷同算我抄袭,,,
本次就到这里
转发请注明出处。。。。。