4.16Intent、Activity应用
一、实验目的
本次实验的目的是让大家熟悉Intent和Activity的使用。Intent的最常用的用途是绑定应用程序组件。Intent用来在应用程序Activity间启动、停止和传输。并实现添加用户名,密码小例程。
二、实验要求
- 完成Android开发平台的搭建及相关配置
- 创建项目并熟悉文件目录结构
- 实现例程添加用户名,密码实验步骤
三、实验步骤
项目界面:添加用户名,密码,在另一页面显示用户名。
1、创建项目
新建一个Android工程命名为IntentDemo,目录结构如下图:
2、添加布局文件
activity_main.xml(主界面布局)
<?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"
android:padding="16dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="用户名"
android:textSize="18sp"/>
<EditText
android:id="@+id/etUsername"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入用户名"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="密码"
android:textSize="18sp"
android:layout_marginTop="16dp"/>
<EditText
android:id="@+id/etPassword"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:hint="请输入密码"/>
<Button
android:id="@+id/btnSubmit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="提交"
android:layout_marginTop="24dp"/>
</LinearLayout>
activity_display.xml(显示界面布局)
<?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"
android:padding="16dp"
android:gravity="center">
<TextView
android:id="@+id/tvDisplay"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="24sp"
android:text="欢迎您:"/>
</LinearLayout>
3、创建Activity
MainActivity.java
package com.example.intentdemo;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
private EditText etUsername, etPassword;
private Button btnSubmit;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 初始化视图组件
etUsername = findViewById(R.id.etUsername);
etPassword = findViewById(R.id.etPassword);
btnSubmit = findViewById(R.id.btnSubmit);
// 设置按钮点击事件
btnSubmit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 获取输入的用户名
String username = etUsername.getText().toString();
// 创建Intent对象,指定从MainActivity跳转到DisplayActivity
Intent intent = new Intent(MainActivity.this, DisplayActivity.class);
// 将用户名通过Intent传递
intent.putExtra("username", username);
// 启动目标Activity
startActivity(intent);
}
});
}
}