android 57 QQ登录

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal" 里面的内容居中显示
android:orientation="vertical" 垂直排列
tools:context=".MainActivity" > <ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/qq" /> <EditText
android:id="@+id/et_qqnumber"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入QQ号码" >
</EditText> <EditText
android:id="@+id/et_password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入密码"
android:inputType="textPassword" /> <CheckBox
android:id="@+id/cb_remember"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="记住用户名和密码" /> <Button
android:onClick="login"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="登陆" /> </LinearLayout>
package com.itheima.qqlogin; import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader; import android.app.Activity;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.Toast; public class MainActivity extends Activity {
private EditText et_qqnumber;
private EditText et_password;
private CheckBox cb_remember; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);//先加载界面在获取id
//寻找这些控件
et_qqnumber = (EditText) findViewById(R.id.et_qqnumber);
et_password = (EditText) findViewById(R.id.et_password);
cb_remember = (CheckBox) findViewById(R.id.cb_remember);
restoreInfo();
} /**
* 登陆按钮的点击事件
* @param view
*/
public void login(View view){
String qq = et_qqnumber.getText().toString().trim();
String password = et_password.getText().toString().trim();
if(TextUtils.isEmpty(qq)||TextUtils.isEmpty(password)){
Toast.makeText(this, "用户名和密码不能为空", 0).show();
return;
}else{
//判断是否需要记录用户名和密码
if(cb_remember.isChecked()){//被选中状态,需要记录用户名和密码
try {
File file = new File(this.getFilesDir(),"info.txt");//安卓运行在手机里面,所以文件在手机里面,
//每安装一个应用程序就会在手机的data/data/应用程序包名:下面创建一个应用程序的文件夹(文件夹的名字是应用程序的名字),这个文件夹是可以向里面读写数据的,
FileOutputStream fos = new FileOutputStream(file);
//10000##123456
String info = qq +"##"+password;
fos.write(info.getBytes());
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
//登陆操作的. 模拟登陆,数据应该提交给服务器 由服务器比较是否正确
if("10000".equals(qq)&&"123456".equals(password)){
Toast.makeText(this, "登陆成功", 0).show();
}else{
Toast.makeText(this, "登陆失败", 0).show();
}
}
} /**
* 根据原来保存的文件信息,把qq号码和密码信息回显到界面
* getFilesDir()//获取应用程序files目录 /data/data/包名/files/ 文件夹
*/
public void restoreInfo(){
File file = new File(this.getFilesDir(),"info.txt");
if(file.exists()&&file.length()>0){
try {
FileInputStream fis = new FileInputStream(file);
BufferedReader br = new BufferedReader(new InputStreamReader(fis));
//10000##123456
String info = br.readLine();//读一行最好用BufferedReader包装一下
String qq = info.split("##")[0];
String pwd = info.split("##")[1];
et_qqnumber.setText(qq);
et_password.setText(pwd);
} catch (Exception e) {
e.printStackTrace();
}
}
} }
android 57 QQ登录的更多相关文章
- Android 调用QQ登录
调用QQ登录 在如今的项目开发.调用第三方登录.差点儿是必须的,而调用QQ登录也是不可缺少的,这里把相关代码分享出来,希望能拿去就能够用,降低项目开发的时间.希望对大家实用. 1,去QQ ...
- Android仿QQ登录下拉历史列表
demo中包含了Sqlite数据库增删改查,对存储的账号进行按照最新的时间排序,限制了最多存储5条数据. 效果图: 1.首先创建MyHelper建表: public class MyHelper ex ...
- Android之QQ登录界面
首先过程中碰到的几个问题: 1.对 EditText 进行自定义背景 2.运行时自动 EditText 自动获得焦点 3.在获得焦点时即清空 hint ,而不是输入后清空 4.清空按钮的出现时机(在得 ...
- Android实现QQ登录
https://www.jianshu.com/p/e59bc198e88f
- Android(java)学习笔记212:中文乱码的问题处理(qq登录案例)
1.我们在之前的笔记中LoginServlet.java中,我们Tomcat服务器回复给客户端的数据是英文的"Login Success","Login Failed&q ...
- Android 实现QQ第三方登录
Android 实现QQ第三方登录 在项目中需要实现QQ第三方登录,经过一番努力算是写出来了,现在总结以下,以防以后遗忘,能帮到其他童鞋就更好了. 首先肯定是去下载SDK和DEMO http://wi ...
- [转]Android:布局实例之模仿QQ登录界面
Android:布局实例之模仿QQ登录界面 预览图: 准备: 1.找到模仿对象 QQ登陆界面UI下载>>>>> 2.导入工程 3.查看布局结构和使用控件 其对应效果图分布 ...
- Android(java)学习笔记155:中文乱码的问题处理(qq登录案例)
1. 我们在之前的笔记中LoginServlet.java中,我们Tomcat服务器回复给客户端的数据是英文的"Login Success","Login Failed& ...
- android实现第三方登录之QQ登录
首先,当然是在腾讯开放平台(http://open.qq.com/)注册成为开发者,然后获取APP ID 1.下载SDK http://wiki.open.qq.com/wiki/mobile/SDK ...
随机推荐
- adodb配置与使用
=========================================php100:80:ADODB PHP数据库万能引擎类 ADODB PHP数据库介绍与特点 ADODB 是一种兼容的各 ...
- Day15 HTML补充、初识JavaScript
一.上节回顾 上节回顾: HTML 头部信息:编码.title.style.link(导入css文件) 身体: 内联 块级 --->inline-block(既有内联效果又有块级效果) a标签: ...
- 用Django搭建个人博客—(3)
今日主题 定义博客文章和评论的的数据库定义 定义操作这几个Model的后台数据 User表 USER_STATUS = ( ('active', u'激活'), ('suspended', u'禁用' ...
- 支付宝集成SDK 报错
1.打开Demo中的错误 这是路径错误导致 解决办法:在Build Settings 中找到 Library Search Paths ,去掉其中的 /// 2.自己集成支付宝SDK时的错误 这个也是 ...
- 越狱开发:用iosOpenDev配置越狱开发环境 编写第一个hello world-b
上网搜索越狱环境搭建,查到iosOpenDev软件,是个很方便的编写插件,而且可以直接用Xcode创建的工具,便开始着手学习如何去安装 集合了网上的方法后,我安装的时候发现: 1.作者最后更新的时间是 ...
- 《Braid》碎片式台词
谁见到过风? 你没有,我也没有. 但当树儿低下头, 便是风儿经过时. 便是风儿穿过的时候. 但当树叶微微摇首, 你没有,我也没有. 谁见到过风? 二.时间与宽恕 1.提姆要出发了!他要去寻找并救出公主 ...
- 实现pushViewController:animated:的不同页面转换特效
1. 首先要明确的是,不使用pushViewController的默认动画,所以在调用这个函数时,要将animated设置为NO.2. 使用普通的来CATransition实现转换效果,代码如下:CA ...
- 居然还有WM_TIMECHANGE(只在用户手动改变系统时间时才会产生作用)
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...
- translate函数使用
SQL> select data,translate(data,'0123456789','##########') as num1, replace(translate(data,'01234 ...
- 【转】模块编译Android源码方法
原文网址:http://blog.csdn.net/androidlover1991/article/details/17014055 实际开发中,并不需要每次都编译所有源代码,只需要编译自己修改的模 ...