android博学谷布局,《Android项目实战-博学谷》设置部分
设置界面
思路
设置界面有三个功能,分别为修改密码、设置密保和退出登录。创建 SettingActivity ,修改布局为 LinearLayout
具体代码如下:
activity_setting.xml
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/white"
android:orientation="vertical"
tools:context="cn.edu.lt.android.boxueguapp.activity.SettingActivity">
android:layout_width="fill_parent"
android:layout_height="1dp"
android:layout_marginTop="15dp"
android:background="#E3E3E3" />
android:id="@+id/rl_modify_psw"
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#F7F8F8"
android:gravity="center_vertical"
android:paddingLeft="10dp"
android:paddingRight="10dp">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="25dp"
android:text="修改密码"
android:textColor="#A3A3A3"
android:textSize="16sp" />
android:layout_width="15dp"
android:layout_height="15dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="25dp"
android:src="@drawable/iv_right_arrow" />
android:layout_width="fill_parent"
android:layout_height="1dp"
android:background="#E3E3E3" />
android:id="@+id/rl_security_setting"
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#F7F8F8"
android:gravity="center_vertical"
android:paddingLeft="10dp"
android:paddingRight="10dp">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="25dp"
android:text="设置密保"
android:textColor="#A3A3A3"
android:textSize="16sp" />
android:layout_width="15dp"
android:layout_height="15dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="25dp"
android:src="@drawable/iv_right_arrow" />
android:layout_width="fill_parent"
android:layout_height="1dp"
android:background="#E3E3E3" />
android:layout_width="fill_parent"
android:layout_height="1dp"
android:layout_marginTop="15dp"
android:background="#E3E3E3" />
android:id="@+id/rl_exit_login"
android:layout_width="fill_parent"
android:layout_height="50dp"
android:background="#F7F8F8"
android:gravity="center_vertical"
android:paddingLeft="10dp"
android:paddingRight="10dp">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="25dp"
android:text="退出登录"
android:textColor="#A3A3A3"
android:textSize="16sp" />
android:layout_width="fill_parent"
android:layout_height="1dp"
android:background="#E3E3E3" />
设置逻辑
思路
在设置界面中添加点击事件,当点击修改密码时跳转到修改密码界面,当点击设置密保时跳转到设置密保界面,当点击退出登录时清除登录状态和用户名,且将退出的状态传递给主界面
SettingActivity
package cn.edu.lt.android.boxueguapp.activity;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.graphics.Color;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.Toast;
import cn.edu.lt.android.boxueguapp.R;
/**
* Created by lt on 2018/1/2.
*/
public class SettingActivity extends AppCompatActivity {
private TextView tv_main_title;
private TextView tv_back;
private RelativeLayout rl_title_bar;
private RelativeLayout rl_modify_psw,rl_security_setting,rl_exit_login;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_setting);
init();
}
/**
* 获取界面控件
*/
private void init(){
//标题栏
tv_main_title=(TextView) findViewById(R.id.tv_main_title);
tv_main_title.setText("设置");
tv_back=(TextView) findViewById(R.id.tv_back);
rl_title_bar=(RelativeLayout) findViewById(R.id.title_bar);
rl_title_bar.setBackgroundColor(Color.parseColor("#30B4FF"));
rl_modify_psw=(RelativeLayout) findViewById(R.id.rl_modify_psw);
rl_security_setting=(RelativeLayout) findViewById(R.id.rl_security_setting);
rl_exit_login=(RelativeLayout) findViewById(R.id.rl_exit_login);
//返回的点击事件
tv_back.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SettingActivity.this.finish();
}
});
//修改密码的点击事件
rl_modify_psw.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//TODO 跳转到修改密码
}
});
//设置密保的点击事件
rl_security_setting.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
//退出登录的点击事件
rl_exit_login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
clearLoginStatus();
Toast.makeText(SettingActivity.this, "退出登录成功", Toast.LENGTH_SHORT).show();
clearLoginStatus();//清除登录状态和登录时的用户名
//退出登录成功后把退出成功的状态传递到MainActivity中
Intent data =new Intent();
data.putExtra("isLogin", false);
setResult(RESULT_OK, data);
SettingActivity.this.finish();
}
});
}
/**
* 清除SharedPreferences中的登录状态和登录时的用户名
*/
private void clearLoginStatus() {
SharedPreferences sp=getSharedPreferences("loginInfo", Context.MODE_PRIVATE);
SharedPreferences.Editor editor=sp.edit();//获取编辑器
editor.putBoolean("isLogin", false);
editor.putString("loginUserName", "");
editor.commit();//提交修改
}
}
运行效果
android博学谷布局,《Android项目实战-博学谷》设置部分相关推荐
- 《Android项目实战-博学谷》应用图标欢迎界面
前言 本项目使用Android Studio 3.0.1作为开发工具,参照传智播客教材<Android项目实战--博学谷> 创建项目 可参照落萚简书文集--Android安全卫士开发笔记, ...
- 关于《基于eclipse的android项目实战—博学谷》的问题,为了这个差点疯了
前面都是废话,想要干的直接点我你就对了 <基于eclipse的android项目实战-博学谷>这篇文章已经一个星期没有更新了,原因是后面出了些问题,然后我花了整整一个星期才解决. < ...
- 基于eclipse的android项目实战—博学谷(二十三)其他功能
本项目是用eclipse软件编写,经过我的亲自实践,其真实有效,希望能给您有所帮助 项目版本:android5.1.1 ADT版本:23.0.6 SDK版本:24.4.1 运行模拟器:夜神模拟器 若有 ...
- 基于eclipse的android项目实战—博学谷(十九)播放不同视频(本地视频)
BoXueGu资源下载链接: https://download.csdn.net/download/hyh/19477319 BoXueGu图片资源下载(免费): https://yuyunyaohu ...
- 基于eclipse的android项目实战—博学谷(十八)播放不同视频(网络视频)
相信经过了这么长时间,小伙伴们应该都发现了博学谷这个项目存在问题,播放视频的时候,无论播放任何一个章节,他播放的视频都只是一个,也就是VideoPlayActivity.java里面写死的那个(myv ...
- 5G 时代的 Android App 开发入门与项目实战
随着移动互联网的持续发展,Android系统从智能手机逐步拓展到平板电脑.智能电视.车载大屏.智能家居.智能手表等诸多设备,Android开发依然是前景可期的IT岗位. 当然,整个社会正在迈向5G时代 ...
- Android零基础开发到项目实战
Android零基础开发到项目实战(目录) 前言:本教程适合零基础学习安卓开发的伙伴,下面是目录,本博主会每天定时更新每一章节的教程,未完..... 一.Java基础阶段 day01_Java语言概述 ...
- 《Android App开发进阶与项目实战》出版后记
<Android App开发入门与项目实战>刚写完,我马上着手编写它的姊妹篇<Android App开发进阶与项目实战>,因为开发入门一书比较基础,还需要一本讲解高级开发与新技 ...
- 《Android App开发进阶与项目实战》资源下载和内容勘误
资源下载 下面是<Android App开发进阶与项目实战>一书用到的工具和代码资源: 1.本书使用的Android Studio版本为4.2,最新的安装包可前往Android官网页面下载 ...
- 《Android App开发入门与项目实战》出版后记
<Android Studio开发实战:从零基础到App上线>自面世以来,承蒙众多朋友的抬爱,该书一直保持不错的销量,其中第一版的出货量突破一万,第二版的出货量即将突破两万.对于一个程序员 ...
最新文章
- 动态规划—最长公共子序列问题 HDU-1159 Common Subsequence
- Oracle表空间文件损坏后的排查及解决
- Hello World程序里居然有bug!
- Interview QA - 房间里有三盏灯,屋里有三个开关分别控制这三盏灯。如何只进入房间一次就知道哪一个开关控制哪一盏灯?
- 开始写博客,毕业一年的收获
- c++ 数组换行_C语言的数组的构建与打印
- matlab绘制球面模型_MATLAB采用surf/surfc/surfl/surfnorm绘制球体
- jsp+servlet+java 实现统计在线人数
- JSON与Protocol Buffers的一些比较
- bookkeeper源码解析
- 为什么css效果在本地测试没问题,上传到服务器后却显示位置乱动,css下拉菜单本地正常,上传后360浏览器中显示错位,火狐、IE8显示正常...
- 浏览器本地存储(cookie、sessionStorage和localStorage)
- Pausing and Resuming an Activity
- 在Web开发中完美控制IE标题栏
- Linux常用的查找命令总结
- ad 报错Minimum Solder Mask Sliver
- 三分钟计算机自我介绍面试,三分钟面试自我介绍【三篇】
- 【常用命令】一键屏幕截屏操作
- 软件变异体测试(mutation test)
- 美女硕士养猪记:如何用大数据激活一头猪