移动应用开发:Android Studio实现简易注册页(数据存放以SharedPreferences形式)

文章目录

  • 简介
  • [步骤 1:创建新活动](#步骤 1:创建新活动)
  • [步骤 2:设计UI布局](#步骤 2:设计UI布局)
  • [步骤 3:编写活动代码](#步骤 3:编写活动代码)
  • [步骤 4:运行应用程序](#步骤 4:运行应用程序)
  • [步骤 5:查看存放数据](#步骤 5:查看存放数据)

简介

使用Android Studio编写的简单Android 注册应用程序,该应用程序包含一个注册界面,具有账号和密码两个文本框,以及退出和提交按钮。按下退出按钮将退出整个程序,按下提交按钮将输入的账号和密码以SharedPreferences的形式存放在模拟器中。

UI界面效果图

好的,以下是一个使用Android Studio编写的简单Android应用程序示例,该应用程序包含一个登录界面,具有账号和密码两个文本框,以及退出和提交按钮。单击退出按钮将退出整个程序,按下提交按钮将根据给定的账号和密码显示相应的消息。

步骤 1:创建新活动

  1. 右击"app",选择"New"------"Activity"------选择"Empty Activity"。

  2. 配置应用名称、包名、保存位置等,然后点击"Finish"。

步骤 2:设计UI布局

打开res/layout/activity_register.xml文件,并添加以下内容以设计登录界面:

xml 复制代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="16dp"
    tools:context=".RegisterActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="120dp"
        android:layout_marginBottom="50dp"
        android:layout_gravity="center"
        android:text="注册页"
        android:textSize="35dp"
        android:textStyle="bold" />

    <LinearLayout
        android:layout_gravity="center"
        android:layout_width="300dp"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="账号:"
            android:textSize="20dp"
            android:textStyle="bold" />

        <EditText
            android:id="@+id/etUsername"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="请输入账号"
            android:inputType="text" />
    </LinearLayout>

    <LinearLayout
        android:layout_gravity="center"
        android:layout_width="300dp"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="10dp"
            android:text="密码:"
            android:textSize="20dp"
            android:textStyle="bold" />

        <EditText
            android:id="@+id/etPassword"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="请输入密码"
            android:inputType="textPassword" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="380dp"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <Button
            android:id="@+id/btnSubmit"
            android:layout_width="80dp"
            android:layout_height="50dp"
            android:layout_marginTop="16dp"
            android:layout_marginLeft="70dp"
            android:text="提交" />

        <Button
            android:id="@+id/btnExit"
            android:layout_width="80dp"
            android:layout_height="50dp"
            android:layout_marginTop="16dp"
            android:layout_marginLeft="50dp"
            android:text="退出" />
    </LinearLayout>

    <TextView
        android:id="@+id/tvMessage"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="16dp"
        android:gravity="center"
        android:visibility="gone" />

</LinearLayout>

步骤 3:编写活动代码

打开RegisterActivity.java文件,并添加以下代码:

java 复制代码
package com.example.mycontacts;

import androidx.appcompat.app.AppCompatActivity;

import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class RegisterActivity extends AppCompatActivity {

    private EditText etUsername;
    private EditText etPassword;
    private Button btnSubmit;
    private Button btnExit;
    private TextView tvMessage;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_register);

        etUsername = findViewById(R.id.etUsername);
        etPassword = findViewById(R.id.etPassword);
        btnSubmit = findViewById(R.id.btnSubmit);
        btnExit = findViewById(R.id.btnExit);
        tvMessage = findViewById(R.id.tvMessage);

        btnSubmit.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String username = etUsername.getText().toString();
                String password = etPassword.getText().toString();

                // 保存账号和密码到SharedPreferences
                SharedPreferences.Editor editor = getSharedPreferences("data",MODE_PRIVATE).edit();
                editor.putString("user",username);
                editor.putString("pass",password);
                editor.apply();
            }
        });

        btnExit.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                finish(); // 关闭当前活动,退出应用(如果只有一个活动)
                // 如果需要完全退出应用(包括所有活动),可以使用以下代码
                // System.exit(0);
            }
        });
    }
}

注意事项

  • System.exit(0); 可以完全退出应用程序,包括所有活动,但在Android中通常不推荐使用,因为Android有自己的活动生命周期管理。
  • finish(); 只关闭当前活动。如果这是应用程序的唯一活动,那么它将退出应用程序。

步骤 4:运行应用程序

  1. 启动Android模拟器。

  2. 点击Android Studio工具栏上的"Run"按钮(绿色三角形)。

  3. 在设备或模拟器上查看应用程序,输入账号和密码并点击按钮进行测试。

步骤 5:查看存放数据

  1. 在模拟器管理窗口下,单击右下角的Device File Explore,打开模拟器文件管理器,进入到data/data目录。

  2. 找到模拟器目录data/data/下与项目包名相同的目录。

  3. 在目录:/data/data/com.example.mycontacts/shared_prefs/data.xml;即可查看文件()。

注意事项

  • 如果无法直接打开data.xml文件,是因为没有权限,此时关闭Android Studio程序,以管理员方式启动Android Studio即可正常打开了。
相关推荐
尹中文23 分钟前
FileProvider高版本使用,跨进程传输文件
android
南宫真汀28 分钟前
Android学生信息管理APP的设计与开发
android
小狗蛋ing1 小时前
Android读取NFC卡片数据
android·nfc读取
李少兄1 小时前
解决 IDEA 修改代码重启不生效的问题
java·ide·intellij-idea
牧杉-惊蛰2 小时前
表格的选择弹窗,选中后返显到表格中
android
CodeCraft Studio2 小时前
【实用教程】如何利用 JxBrowser 在 Kotlin 中实现屏幕共享
android·开发语言·kotlin
徐浪老师3 小时前
用 Android Studio 从零开发一个多功能计算器应用
android·ide·android studio
小黄人软件3 小时前
【android USB 串口通信助手】stm32 源码demo 单片机与手机通信 Android studio 20241118
android·stm32·单片机
喵~来学编程啦3 小时前
【一篇搞定配置】Visual Studio安装配置与使用
ide·visual studio