Activity的启动和关闭

1.启动activity

activity的启动分为两种,一种为入口activity,另一种为其他activity

在AndroidManifests进行配置,入口activity的启动只要在要启动的activity里加入intent,例如下面代码将MainActivity作为入口Activity

<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

那其他activity如何启动呢?

答案是:startActivity来进行启动,通过intent对象获得要启动的activity,再进行启动。

 psw.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent=new Intent(MainActivity.this,ForgetpswActivity.class);
startActivity(intent);
}
});

2.关闭Activity

直接调用finish()即可关闭当前的活动,需要注意的是,当需要关闭的活动不是主活动而是其他活动时,关闭后就会回到主活动;如果要关闭的活动是主活动

则就直接返回手机主屏幕。

close.setOnClickListener(new View.OnClickListener() {  //为关闭按钮创建监听事件
@Override
public void onClick(View v) { finish(); //关闭当前Activity
}
});

小妙招:刷新当前Activity------》onCreat(null);

Activity启动与关闭的实例:

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/biaoge"
tools:context=".MainActivity"> <TextView
android:id="@+id/zhanghao"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="账号:"
android:textSize="25sp"
app:layout_constraintBottom_toTopOf="@+id/idpsw"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.145"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.924"
tools:ignore="MissingConstraints" /> <EditText
android:id="@+id/edtzhanghao"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:hint="邮箱或者手机号" app:layout_constraintStart_toEndOf="@+id/idpsw"
app:layout_constraintTop_toTopOf="@+id/zhanghao"
tools:ignore="MissingConstraints" /> <TextView
android:id="@+id/idpsw"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp"
android:layout_marginLeft="1dp" android:text="密码:"
android:textSize="25sp"
app:layout_constraintBaseline_toBaselineOf="@+id/edtpsw"
app:layout_constraintStart_toStartOf="@+id/btnzhuce"
tools:ignore="MissingConstraints" /> <EditText
android:id="@+id/edtpsw"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="1dp" android:layout_marginLeft="1dp"
android:layout_marginBottom="205dp"
android:hint="输入6-16位数字或密码"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toEndOf="@+id/idpsw"
tools:ignore="MissingConstraints" /> <Button
android:id="@+id/btnzhuce"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="48dp"
android:layout_marginLeft="48dp"
android:text="注册"
app:layout_constraintBaseline_toBaselineOf="@+id/btnlogin"
app:layout_constraintStart_toStartOf="parent"
tools:ignore="MissingConstraints" /> <Button
android:id="@+id/btnlogin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:layout_marginEnd="8dp"
android:layout_marginRight="8dp"
android:background="#FF8247"
android:text="登录"
app:layout_constraintEnd_toStartOf="@+id/wang_psw"
app:layout_constraintTop_toBottomOf="@+id/edtpsw"
tools:ignore="MissingConstraints" /> <TextView
android:id="@+id/wang_psw"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="19dp"
android:layout_marginEnd="76dp"
android:layout_marginRight="76dp"
android:background="#FF8247"
android:text="忘记密码?"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/btnlogin"
tools:ignore="MissingConstraints" /> </androidx.constraintlayout.widget.ConstraintLayout>

activity_forgetpsw.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/beijing"
tools:context=".ForgetpswActivity"> <ImageButton
android:id="@+id/close"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="3dp"
android:layout_marginLeft="3dp"
android:layout_marginTop="16dp"
android:background="#0000"
android:src="@drawable/guanbi"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:ignore="MissingConstraints" /> <TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="33dp" android:layout_marginLeft="33dp"
android:layout_marginTop="124dp"
android:text="你的邮箱或手机号"
android:textSize="15sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:ignore="MissingConstraints" /> <EditText
android:id="@+id/edtemailorphone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="33dp"
android:layout_marginLeft="33dp"
android:layout_marginTop="28dp"
android:hint="请输入手机号或邮箱"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView" /> <Button
android:id="@+id/btnok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="56dp"
android:layout_marginLeft="56dp"
android:layout_marginTop="48dp"
android:layout_marginEnd="58dp"
android:layout_marginRight="58dp"
android:background="#fff000"
android:text="确定"
app:layout_constraintEnd_toEndOf="@+id/edtemailorphone"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/edtemailorphone" /> </androidx.constraintlayout.widget.ConstraintLayout>

MainActivity.java

package com.example.forgetpsw;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView; public class MainActivity extends AppCompatActivity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView psw=(TextView)findViewById(R.id.wang_psw);
psw.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent=new Intent(MainActivity.this,ForgetpswActivity.class);
startActivity(intent);
}
});
}
}

ForgetpswActivity.java

package com.example.forgetpsw;

import androidx.appcompat.app.AppCompatActivity;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageButton; public class ForgetpswActivity extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_forgetpsw);
ImageButton close = (ImageButton) findViewById(R.id.close); //获取布局文件中的关闭按钮
close.setOnClickListener(new View.OnClickListener() { //为关闭按钮创建监听事件
@Override
public void onClick(View v) { finish(); //关闭当前Activity
}
});
}
}

项目截图:当点击忘记密码会启动忘记密码事件,当点击叉号就会回到主活动。

android之Activity的创建与关闭的更多相关文章

  1. Android课程---Activity的创建

    一.为了创建一个新的Activity,你需要继承Activity类,定义UI,实现功能.新的Activity的最基本的框架代码如下所示: package com.paad.myapplication; ...

  2. Android开发--Activity的创建

    1.Activity概述 Activity是android四大基本组件之一.每一个activity文件对应一个界面,一个程序由多个activity组成. 2.Android工作目录

  3. Android基础Activity篇——创建一个活动(Activity)

    1.创建活动 首先用AS创建一个add no activity项目名使用ActivityTest,包名为默认的com.example.activitytest 2.右击app.java.com.exa ...

  4. Android提升篇系列:Activity recreate(Activity 重新创建/自我恢复)机制(一)

    注:本文中的recreate是指当内存不足时,Activity被回收,但再次来到此Activity时,系统重新恢复的过程.例如:当Activity A到Activity B时,如果内存不足,A被回收, ...

  5. Android开发之Activity的创建跳转及传值

    在Android系统的江湖中有四大组件:活动(Activity), 服务(Service), 广播接收器(Broadcast Reciver)和内容提供者(Content Provider).今天所介 ...

  6. Android 子activity关闭 向父activity传值

    使用startActivity方式启动的Activity和它的父Activity无关,当它关闭时也不会提供任何反馈. 可变通的,你可以启动一个Activity作为子Activity,它与父Activi ...

  7. Android 编程下 Activity 的创建和应用退出时的销毁

    为了确保对应用中 Activity 的创建和销毁状态进行控制,所以就需要一个全局的变量来记录和销毁这些 Activity.这里的大概思路是写一个类继承 Application,并使获取该 Applic ...

  8. Android WiFi开发教程(一)——WiFi热点的创建与关闭

    相对于BlueTooth,WiFi是当今使用最广的一种无线网络传输技术, 几乎所有智能手机.平板电脑和笔记本电脑都支持Wi-Fi上网.因此,掌握基本的WiFI开发技术是非常必要的.本教程将围绕一个小D ...

  9. ADT中创建Android的Activity

    去创建Activity New->Other->Android->Android Activity->BlankActivity: 输入对应的信息: 创建完毕后,可以看到新建了 ...

随机推荐

  1. 【题解】ARC101F Robots and Exits(DP转格路+树状数组优化DP)

    [题解]ARC101F Robots and Exits(DP转格路+树状数组优化DP) 先删去所有只能进入一个洞的机器人,这对答案没有贡献 考虑一个机器人只能进入两个洞,且真正的限制条件是操作的前缀 ...

  2. $bzoj2560$ 串珠子 容斥+$dp$

    正解:容斥+$dp$ 解题报告: 传送门$QwQ$ $umm$虽然题目蛮简练的了但还是有点难理解,,,我再抽象一点儿,就说有$n$个点,点$i$和点$j$之间有$a_{i,j}$条无向边可以连,问有多 ...

  3. 洛谷$P$1402 酒店之王 网络流

    正解:网络流 解题报告: 传送门! 一看就很网络流昂,,,于是现在的问题就变成怎么建图了$QwQ$ 首先如果只有一个要求,那就直接按要求建图然后跑个最大流就好. 现在变成,有两个要求,必须同时满足,考 ...

  4. $CH$3801 $Rainbow$的信号 期望+位运算

    正解:位运算 解题报告: 传送门! 其实就是个位运算,,,只是顺便加了个期望的知识点$so$期望的帕并不难来着$QwQ$ 先把期望的皮扒了,就直接分类讨论下,不难发现,答案分为两个部分 $\left\ ...

  5. SpringBoot原理分析与配置

    1.1 起步依赖原理分析 1.1.1 分析spring-boot-starter-parent 按住Ctrl点击pom.xml中的spring-boot-starter-parent,跳转到了spri ...

  6. 「洛谷P1231」教辅的组成 解题报告

    P1231 教辅的组成 题目背景 滚粗了的HansBug在收拾旧语文书,然而他发现了什么奇妙的东西. 题目描述 蒟蒻HansBug在一本语文书里面发现了一本答案,然而他却明明记得这书应该还包含一份练习 ...

  7. 「2018-12-02模拟赛」T1 最短路 解题报告

    1.最短路(short.pas/cpp/in/out) 问题描述: 小 C 终于被小 X 感动了,于是决定与他看电影,然而小 X 距离电影院非常远,现在假设 每条道路需要花费小 X 的时间为 1,由于 ...

  8. springboot-实现文件下载

    一 前言 本文实现的文件下载是使用Apache 的 commons-fileupload 实现:在之前的springboot系列文件中已经讲述过如何实现多文件上传:这篇文件实现的文件下载功能主要是能在 ...

  9. Node.js 模块系统入门

    在编程领域中,模块是自包含的功能单元,可以跨项目共享和重用.它们使开发人员的生活更加轻松,因为我们可以使用它来增加应用程序的功能,而不必亲自编写这些功能.它还让我们可以组织和解耦代码,从而使应用程序更 ...

  10. MinIO 搭建使用

    MinIO简介¶ MinIO 是一款基于Go语言的高性能对象存储服务,在Github上已有19K+Star.它采用了Apache License v2.0开源协议,非常适合于存储大容量非结构化的数据, ...