云服务器的搭建
双层嵌套
第一层 FragmentTabHost + Fragment
- 实例化FragmentTabHost对象
- 实例化TabHost,将TabHost和frgment绑定
- 给FragmentTabHost添加TabHost
- 最后给TabWidget添加点击事件监听器
第二层 TabLayout+ViewPager
基于第一层中的Fragment实现,本文使用了TabLayout和ViewPager。
- 初始化tablayout,给TabLayout添加Tab,添加数据列表
- 定义ViewPager的fragment
- 定义ViewPager的adapter
- 相关连Tablayout和ViewPager
轮播图Banner
实现
添加依赖
xml布局设置组件
java配置轮播数据
上拉刷新下拉加载与二层页面
MD5加密算法
对明文进行处理产生一个128位(16字节)的散列值,为了便于展示和读写一般将128位的二进制数转换成32位16进制数。
不会直接发送明文密码、服务器管理人员也无法确切的知道密码。
public class MessageDisgest {
public String secretPassword(String password) {
try {
if(password != null && !password.equals("")) {
MessageDigest md5 = MessageDigest.getInstance("MD5");
byte[] pwdb = password.getBytes();
byte[] digest = md5.digest(pwdb);
String str = "";
char HEX_DIGITS[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
for(byte b:digest) {
str+=HEX_DIGITS[(b & 0xf0) >> 4] + "" + HEX_DIGITS[b & 0xf];
}
System.out.println("用户密码加密前:"+password);
System.out.println("用户密码加密:"+str);
return str;
}
} catch (NoSuchAlgorithmException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
}