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();//提交修改

}

}

运行效果

bV1kIC?w=478&h=906

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值