版权声明:原创文章,未经允许,禁止转载! https://blog.csdn.net/weixin_36512652/article/details/83099191
创建三个Activity,分别负责登录、信息显示、信息修改功能
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#ffffff"
android:orientation="vertical">
<ImageView
android:id="@+id/img_logo"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_gravity="center_horizontal"
android:layout_marginTop="80dp"
android:background="#ffffff"
android:src="@drawable/alipay" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginTop="40dp"
android:background="#ffffff"
android:orientation="vertical">
<TextView
android:id="@+id/account"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_marginLeft="1dp"
android:layout_marginRight="20dp"
android:gravity="center"
android:text="账号"
android:textSize="16sp"
android:textStyle="bold" />
<EditText
android:id="@+id/login_et_user"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_toRightOf="@+id/account"
android:background="#ffffff"
android:hint="手机号/邮箱/淘宝会员名"
android:textSize="16sp" />
<TextView
android:id="@+id/fill_text"
android:layout_width="match_parent"
android:layout_height="10dp"
android:layout_below="@+id/login_et_user" />
<TextView
android:id="@+id/password"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_below="@+id/fill_text"
android:layout_marginLeft="1dp"
android:layout_marginRight="20dp"
android:gravity="center"
android:text="密码"
android:textSize="16sp"
android:textStyle="bold" />
<EditText
android:id="@+id/login_et_password"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_below="@+id/fill_text"
android:layout_toRightOf="@+id/password"
android:background="#ffffff"
android:hint="请输入登录密码"
android:inputType="textPassword"
android:textSize="16sp" />
</RelativeLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="20dp" />
<TextView
android:layout_width="match_parent"
android:layout_height="2dp" />
<Button
android:id="@+id/bt_login"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_gravity="center_horizontal"
android:layout_marginEnd="15dp"
android:layout_marginStart="15dp"
android:background="@drawable/shape"
android:gravity="center"
android:text="登录"
android:onClick="forgetPwd"
android:textColor="#ffffff"
android:textSize="16sp" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffff">
<Button
android:id="@+id/forget_pwd"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:layout_marginLeft="25dp"
android:background="@null"
android:gravity="center"
android:onClick="forgetPwd"
android:text="忘记密码?"
android:textColor="#FF4FC3F7"
android:textSize="16sp" />
<Button
android:id="@+id/message_verify_code"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_alignParentRight="true"
android:layout_marginRight="25dp"
android:background="@null"
android:gravity="center"
android:paddingRight="0dp"
android:text="短信验证码登录"
android:textColor="#FF4FC3F7"
android:textSize="16sp" />
<TextView
android:id="@+id/fill_text2"
android:layout_width="match_parent"
android:layout_height="80dp"
android:layout_below="@+id/message_verify_code" />
<Button
android:layout_width="wrap_content"
android:layout_height="30dp"
android:layout_above="@+id/fill_text3"
android:layout_centerHorizontal="true"
android:background="@null"
android:gravity="center"
android:text="更多"
android:textColor="#FF4FC3F7"
android:textSize="16sp" />
<TextView
android:id="@+id/fill_text3"
android:layout_width="match_parent"
android:layout_height="20dp"
android:layout_alignParentBottom="true" />
</RelativeLayout>
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<ImageView
android:id="@+id/user_img"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_gravity="center_horizontal"
android:layout_marginTop="80dp"
android:background="#ffffff"
android:src="@drawable/alipay" />
<TextView
android:layout_width="match_parent"
android:layout_height="5dp" />
<TextView
android:id="@+id/username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:gravity="center"
android:text="账号:" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginTop="40dp"
android:background="#ffffff"
android:orientation="vertical">
<TextView
android:id="@+id/fill_text1"
android:layout_width="match_parent"
android:layout_height="2dp"
android:layout_alignParentTop="true"
android:background="#CFD8DC" />
<TextView
android:id="@+id/name"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:layout_below="@+id/fill_text1"
android:gravity="center"
android:text="姓名"
android:textSize="16sp"
android:textStyle="bold" />
<TextView
android:id="@+id/show_name"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/name"
android:background="#ffffff"
android:gravity="center"
android:hint="未填写"
android:textSize="16sp" />
<TextView
android:id="@+id/fill_text2"
android:layout_width="match_parent"
android:layout_height="2dp"
android:layout_below="@+id/show_name"
android:background="#CFD8DC" />
<TextView
android:id="@+id/phone"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:layout_below="@+id/fill_text2"
android:gravity="center"
android:text="手机号"
android:textSize="16sp"
android:textStyle="bold" />
<TextView
android:id="@+id/show_phone"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_below="@+id/fill_text2"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/phone"
android:background="#ffffff"
android:gravity="center"
android:hint="未填写"
android:textSize="16sp" />
<TextView
android:id="@+id/fill_text3"
android:layout_width="match_parent"
android:layout_height="2dp"
android:layout_below="@+id/show_phone"
android:background="#CFD8DC" />
<TextView
android:id="@+id/email"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:layout_below="@+id/fill_text3"
android:gravity="center"
android:text="邮箱"
android:textSize="16sp"
android:textStyle="bold" />
<TextView
android:id="@+id/show_email"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_below="@+id/fill_text3"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/email"
android:background="#ffffff"
android:gravity="center"
android:hint="未填写"
android:textSize="16sp" />
<TextView
android:id="@+id/fill_text4"
android:layout_width="match_parent"
android:layout_height="2dp"
android:layout_below="@+id/show_email"
android:background="#CFD8DC" />
<TextView
android:id="@+id/fill_text5"
android:layout_width="match_parent"
android:layout_height="10dp"
android:layout_below="@+id/fill_text4"
android:background="#ffffff" />
<Button
android:id="@+id/edit_person_info"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_below="@+id/fill_text5"
android:layout_centerHorizontal="true"
android:background="#039BE5"
android:gravity="center"
android:text="编辑个人信息"
android:textColor="#ffffff" />
</RelativeLayout>
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:layout_marginTop="20dp"
android:background="#ffffff"
android:orientation="vertical">
<TextView
android:id="@+id/name"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:gravity="center"
android:text="姓名"
android:textSize="16sp"
android:textStyle="bold" />
<EditText
android:id="@+id/edit_name"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/name"
android:background="#ffffff"
android:hint="请输入姓名"
android:textSize="16sp" />
<TextView
android:id="@+id/fill_text1"
android:layout_width="match_parent"
android:layout_height="20dp"
android:layout_below="@+id/edit_name"
android:background="#ffffff" />
<TextView
android:id="@+id/phone"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:layout_below="@+id/fill_text1"
android:gravity="center"
android:text="手机号"
android:textSize="16sp"
android:textStyle="bold" />
<EditText
android:id="@+id/edit_phone"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_below="@+id/fill_text1"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/phone"
android:background="#ffffff"
android:hint="请输入手机号"
android:textSize="16sp" />
<TextView
android:id="@+id/fill_text2"
android:layout_width="match_parent"
android:layout_height="20dp"
android:layout_below="@+id/edit_phone"
android:background="#ffffff" />
<TextView
android:id="@+id/email"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:layout_below="@+id/fill_text2"
android:gravity="center"
android:text="邮箱"
android:textSize="16sp"
android:textStyle="bold" />
<EditText
android:id="@+id/edit_email"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_below="@+id/fill_text2"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/email"
android:background="#ffffff"
android:hint="请输入邮箱"
android:textSize="16sp" />
<TextView
android:id="@+id/fill_text3"
android:layout_width="match_parent"
android:layout_height="30dp"
android:layout_below="@+id/edit_email"
android:background="#ffffff" />
<Button
android:id="@+id/save_person_info"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_below="@+id/fill_text3"
android:layout_centerHorizontal="true"
android:background="#039BE5"
android:gravity="center"
android:text="保存个人信息"
android:textColor="#ffffff" />
</RelativeLayout>
</LinearLayout>
package com.youngpain.alipay;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity {
private EditText username;
private EditText password;
private Button loginButton;
private Button forgetButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//去除标题栏
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_main);
//初始化
init();
//测试
//forgetButton = findViewById(R.id.forget_pwd);
//forgetButton.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// Toast.makeText(MainActivity.this, "通过setOnClickListener实现事件处理"
// , Toast.LENGTH_LONG).show();
// }
//});
}
/**
* 使用android:onClick="forgetPwd"实现事件处理
*
* @param view
*/
public void forgetPwd(View view) {
Toast.makeText(MainActivity.this, "忘记密码", Toast.LENGTH_LONG).show();
//Toast.makeText(MainActivity.this, "通过android:onClick实现事件处理", Toast.LENGTH_LONG).show();
}
/**
* 通过setOnClickListener实现事件处理
*/
private void init() {
//获取控件
username = findViewById(R.id.login_et_user);
password = findViewById(R.id.login_et_password);
loginButton = findViewById(R.id.bt_login);
//绑定监听事件
loginButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String name = username.getText().toString().trim();
String pwd = password.getText().toString();
if ("".equals(name) || "".equals(pwd)) {
Toast.makeText(MainActivity.this, "用户名或密码不能为空"
, Toast.LENGTH_SHORT).show();
} else {
Intent intent = new Intent(MainActivity
.this, PersonInfoActivity.class);
//使用Bundle传递数据
Bundle bundle = new Bundle();
bundle.putString("username", name);
intent.putExtras(bundle);
//直接传递数据
//intent.putExtra("username", name);
startActivity(intent);
}
}
});
}
}
package com.youngpain.alipay;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.widget.Button;
import android.widget.TextView;
public class PersonInfoActivity extends Activity {
private TextView username;
private TextView showName;
private TextView showPhone;
private TextView showEmail;
private Button editInfo;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//去除标题栏
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.person_info);
//初始化
init();
//接收登录页面传来的用户名并显示
//使用Bundle获取数据
String name = getIntent().getExtras().getString("username");
//String name = getIntent().getStringExtra("username");
username.setText("账号:" + name);
}
//重写onActivityResult方法获取上一个Activity传回来的数据
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
switch (resultCode) {
case 8:
String name = data.getStringExtra("name");
String phone = data.getStringExtra("phone");
String email = data.getStringExtra("email");
showName.setText(name);
showPhone.setText(phone);
showEmail.setText(email);
break;
default:
break;
}
}
//初始化
private void init() {
username = findViewById(R.id.username);
showName = findViewById(R.id.show_name);
showPhone = findViewById(R.id.show_phone);
showEmail = findViewById(R.id.show_email);
editInfo = findViewById(R.id.edit_person_info);
editInfo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//获取EditPersonInfoActivity返回的数据
startActivityForResult(new Intent(PersonInfoActivity.this
, EditPersonInfoActivity.class), 1);
}
});
}
}
package com.youngpain.alipay;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.widget.Button;
import android.widget.EditText;
public class EditPersonInfoActivity extends Activity {
private EditText editName;
private EditText editPhone;
private EditText editEmail;
private Button saveButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//去除标题栏
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.edit_person_info);
//初始化
init();
}
//初始化
private void init() {
editName = findViewById(R.id.edit_name);
editPhone = findViewById(R.id.edit_phone);
editEmail = findViewById(R.id.edit_email);
saveButton = findViewById(R.id.save_person_info);
saveButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//获取输入信息
String name = editName.getText().toString().trim();
String phone = editPhone.getText().toString().trim();
String email = editEmail.getText().toString().trim();
Intent intent = new Intent();
intent.putExtra("name", name);
intent.putExtra("phone", phone);
intent.putExtra("email", email);
Activity activity = EditPersonInfoActivity.this;
//设置要返回的数据
activity.setResult(8, intent);
activity.finish();
}
});
}
}
注意:在AndroidManifest.xml文件中添加跳转的Activity
<application
android:allowBackup="true"
android:icon="@drawable/alipay"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".PersonInfoActivity"
android:label="个人信息" />
<activity
android:name=".EditPersonInfoActivity"
android:label="编辑个人信息" />
</application>
结果显示: