当前位置: 首页 > news >正文

南昌做网站建设哪家好免费做试用的网站

南昌做网站建设哪家好,免费做试用的网站,做网站公司长沙哪家好,网站怎么添加二级域名本文主要讲述了利用sharedpreference实现记住密码与自动登陆功能 根据checkbox的状态存储用户名与密码将结果保存在自定义的application中#xff0c;成为全局变量 布局文件 ?xml version1.0 encodingutf-8? ScrollView xmlns:andro…本文主要讲述了利用sharedpreference实现记住密码与自动登陆功能 根据checkbox的状态存储用户名与密码将结果保存在自定义的application中成为全局变量 布局文件 ?xml version1.0 encodingutf-8? ScrollView xmlns:androidhttp://schemas.android.com/apk/res/androidandroid:layout_widthfill_parentandroid:layout_heightfill_parentandroid:fitsSystemWindowstrueLinearLayoutandroid:orientationverticalandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:paddingTop56dpandroid:paddingLeft24dpandroid:paddingRight24dpImageView android:srcdrawable/logoandroid:layout_widthwrap_contentandroid:layout_height72dpandroid:layout_marginBottom24dpandroid:layout_gravitycenter_horizontal /!-- Email Label --android.support.design.widget.TextInputLayoutandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:layout_marginTop8dpandroid:layout_marginBottom8dpEditText android:idid/input_emailandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:inputTypetextEmailAddressandroid:hintPhone //android.support.design.widget.TextInputLayout!-- Password Label --android.support.design.widget.TextInputLayoutandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:layout_marginTop8dpandroid:layout_marginBottom8dpEditText android:idid/input_passwordandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:inputTypetextPasswordandroid:hintPassword//android.support.design.widget.TextInputLayoutLinearLayoutandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:orientationhorizontalandroid:gravitycenter_horizontalCheckBoxandroid:idid/rm_passandroid:layout_widthwrap_contentandroid:layout_heightwrap_contentandroid:text记住密码android:layout_marginRight30dpandroid:checkedtrue/CheckBoxandroid:idid/au_loginandroid:layout_widthwrap_contentandroid:layout_heightwrap_contentandroid:text自动登陆android:layout_marginLeft30dp//LinearLayoutandroid.support.v7.widget.AppCompatButtonandroid:idid/btn_loginandroid:layout_widthfill_parentandroid:layout_heightwrap_contentandroid:layout_marginTop24dpandroid:layout_marginBottom24dpandroid:padding12dpandroid:textLogin/TextView android:idid/link_signupandroid:layout_widthfill_parentandroid:layout_heightwrap_contentandroid:layout_marginBottom24dpandroid:textNo account yet? Create oneandroid:gravitycenterandroid:textSize16dip//LinearLayout /ScrollView 登陆界面 package com.zj.login;import android.app.Activity; import android.app.ProgressDialog; import android.content.Intent; import android.content.SharedPreferences; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.util.Log; import android.util.Patterns; import android.view.View; import android.widget.Button; import android.widget.CheckBox; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast;import com.zj.cafetriafood.R;import butterknife.Bind; import butterknife.ButterKnife;/*** A login screen that offers login via email/password.*/ public class LoginActivity extends AppCompatActivity {private static final String TAG LoginActivity;private static final int REQUEST_SIGNUP 0;private SharedPreferences sp;Bind(R.id.input_email) EditText _emailText;Bind(R.id.input_password) EditText _passwordText;Bind(R.id.btn_login) Button _loginButton;Bind(R.id.link_signup) TextView _signupLink;Bind(R.id.rm_pass) CheckBox _rmpass;Bind(R.id.au_login) CheckBox _aulogin;Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_login);ButterKnife.bind(this);sp this.getSharedPreferences(userInfo, Activity.MODE_PRIVATE);_loginButton.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View v) {login();}});_signupLink.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View v) {// Start the Signup activityIntent intent new Intent(getApplicationContext(), SignupActivity.class);startActivityForResult(intent, REQUEST_SIGNUP);}});if(sp.getBoolean(ISCHECK, false)){_rmpass.setChecked(true);_emailText.setText(sp.getString(USER_NAME, ));_passwordText.setText(sp.getString(PASSWORD, ));if(sp.getBoolean(AUTO_ISCHECK, false)){//设置默认是自动登录状态_aulogin.setChecked(true);//跳转界面//Intent intent new Intent(LoginActivity.this,MainActivity.class);//startActivity(intent);this.finish();}}}public void login() {Log.d(TAG, Login);if (!validate()) {onLoginFailed();return;}_loginButton.setEnabled(false);final ProgressDialog progressDialog new ProgressDialog(LoginActivity.this,R.style.AppTheme_Dark_Dialog);progressDialog.setIndeterminate(true);progressDialog.setMessage(Authenticating...);progressDialog.show();String email _emailText.getText().toString();String password _passwordText.getText().toString();// TODO: Implement your own authentication logic here.Log.i(test,emailpasswordemail,password);if(!email.equals(123)||!password.equals(123456)){progressDialog.dismiss();_loginButton.setEnabled(true);_emailText.setText();_passwordText.setText();Toast.makeText(getApplication(), 用户名或密码错误, Toast.LENGTH_SHORT).show();return;}if(_rmpass.isChecked()){//记住用户名、密码、SharedPreferences.Editor editor sp.edit();editor.putString(USER_NAME, email);editor.putString(PASSWORD, password);editor.commit();sp.edit().putBoolean(ISCHECK, true).commit();}else{sp.edit().putBoolean(ISCHECK, true).commit();}if (_aulogin.isChecked()){sp.edit().putBoolean(AUTO_ISCHECK, true).commit();}else{sp.edit().putBoolean(AUTO_ISCHECK, false).commit();}new android.os.Handler().postDelayed(new Runnable() {public void run() {// On complete call either onLoginSuccess or onLoginFailedonLoginSuccess();// onLoginFailed();progressDialog.dismiss();}}, 3000);}Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {if (requestCode REQUEST_SIGNUP) {if (resultCode RESULT_OK) {// TODO: Implement successful signup logic here// By default we just finish the Activity and log them in automaticallythis.finish();}}}Overridepublic void onBackPressed() {// Disable going back to the MainActivitymoveTaskToBack(true);}public void onLoginSuccess() {_loginButton.setEnabled(true);finish();}public void onLoginFailed() {Toast.makeText(getBaseContext(), Login failed, Toast.LENGTH_LONG).show();_loginButton.setEnabled(true);}public boolean validate() {boolean valid true;String email _emailText.getText().toString();String password _passwordText.getText().toString();if (email.isEmpty() || !Patterns.PHONE.matcher(email).matches()) {_emailText.setError(enter a valid phone number);valid false;} else {_emailText.setError(null);}if (password.isEmpty() || password.length() 4 || password.length() 10) {_passwordText.setError(between 4 and 10 alphanumeric characters);valid false;} else {_passwordText.setError(null);}return valid;} }MainActivity package com.zj.cafetriafood;import android.app.Activity; import android.content.Intent; import android.content.SharedPreferences; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.widget.TextView;import com.zj.application.MyApplication; import com.zj.login.LoginActivity;import butterknife.Bind; import butterknife.ButterKnife;public class MainActivity extends AppCompatActivity {private SharedPreferences sp;private MyApplication myApplication;Bind(R.id.text_user) TextView text_user;Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);ButterKnife.bind(this);sp this.getSharedPreferences(userInfo, Activity.MODE_PRIVATE);if(sp.getBoolean(AUTO_ISCHECK, false)){myApplication (MyApplication) getApplication();myApplication.setUsername(sp.getString(USER_NAME,));}else{Intent intent new Intent(this, LoginActivity.class);startActivity(intent);}text_user.setText(myApplication.getUsername());}} MyApplication package com.zj.application;import android.app.Application;/*** Created by jjx on 2016/5/22.*/ public class MyApplication extends Application{public String getUsername() {return username;}public void setUsername(String username) {this.username username;}String username;Overridepublic void onCreate() {super.onCreate();setUsername(用户名);} } 参考链接 Android 记住密码和自动登录界面的实现SharedPreferences 的用法 - liuyiming_的专栏 - 博客频道 - CSDN.NET Android中Application类用法 - Harvey Ren - 博客园 Application对象的生命周期是整个程序中最长的它的生命周期就等于这个程序的生命周期。因为它是全局的单例的所以在不同的Activity,Service中获得的对象都是同一个对象。所以可以通过Application来进行一些如数据传递、数据共享和数据缓存等操作。 在Android中可以通过继承Application类来实现应用程序级的全局变量这种全局变量方法相对静态类更有保障直到应用的所有Activity全部被destory掉之后才会被释放掉。 效果如下
http://www.pierceye.com/news/153692/

相关文章:

  • 卖车网站投资网站建设
  • 网站开发过程 文档合肥婚恋网站建设
  • 网站自助建设目录更新 wordpress
  • 百度给做网站吗flash网站制作教程 下载
  • 化工销售怎么做网站wordpress 论坛功能
  • 网上做平面设计兼职不错的网站网站 seo优化
  • seo做的最好的网站设计专业
  • 顾家家居网站是哪个公司做的东莞软件有限公司
  • 云南做网站哪家好wordpress文章内多页效果
  • 上海做网站公司哪家好建筑公司有哪些部门和职位
  • 用front page2003做网站的导航条网站的站点建设分为
  • 开封网站建设zducmwordpress评论ajax
  • 电脑如何做网站空间西安网站建设sxyun
  • 济南历城区网站建设2022年没封网站直接进入
  • 平面设计和网站建设哪个好icp备案可以自己搞吗
  • 平面电商网站建设初级网页设计
  • 个人购物网站怎么备案数据调查的权威网站
  • 网站规划和建设的基本要求100个无水印短视频素材免费
  • 河北住房和建设厅官方网站如何建设运输网站
  • 网络品牌网站建设价格网站设计部
  • 用自己照片做衣服 杯子的是哪个网站深圳东门老街
  • 四川省乐山市建设银行网站互联网保险行业发展报告
  • 厦门手机网站建设是什么山东泰安昨晚发生的事
  • 山西网站开发公司园林景观设计公司计划书
  • 吉林平安建设网站项城市建设规划局网站
  • 购物网站er图经营管理培训课程
  • 男女明星直接做的视频网站wordpress设置的页面跳转失败
  • 建企业网站价格wordpress稳定吗
  • 免费1级做爰网站研发项目管理系统
  • 建设网站好公司石家庄招聘求职信息网