android之Activity的创建与关闭
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的创建与关闭的更多相关文章
- Android课程---Activity的创建
一.为了创建一个新的Activity,你需要继承Activity类,定义UI,实现功能.新的Activity的最基本的框架代码如下所示: package com.paad.myapplication; ...
- Android开发--Activity的创建
1.Activity概述 Activity是android四大基本组件之一.每一个activity文件对应一个界面,一个程序由多个activity组成. 2.Android工作目录
- Android基础Activity篇——创建一个活动(Activity)
1.创建活动 首先用AS创建一个add no activity项目名使用ActivityTest,包名为默认的com.example.activitytest 2.右击app.java.com.exa ...
- Android提升篇系列:Activity recreate(Activity 重新创建/自我恢复)机制(一)
注:本文中的recreate是指当内存不足时,Activity被回收,但再次来到此Activity时,系统重新恢复的过程.例如:当Activity A到Activity B时,如果内存不足,A被回收, ...
- Android开发之Activity的创建跳转及传值
在Android系统的江湖中有四大组件:活动(Activity), 服务(Service), 广播接收器(Broadcast Reciver)和内容提供者(Content Provider).今天所介 ...
- Android 子activity关闭 向父activity传值
使用startActivity方式启动的Activity和它的父Activity无关,当它关闭时也不会提供任何反馈. 可变通的,你可以启动一个Activity作为子Activity,它与父Activi ...
- Android 编程下 Activity 的创建和应用退出时的销毁
为了确保对应用中 Activity 的创建和销毁状态进行控制,所以就需要一个全局的变量来记录和销毁这些 Activity.这里的大概思路是写一个类继承 Application,并使获取该 Applic ...
- Android WiFi开发教程(一)——WiFi热点的创建与关闭
相对于BlueTooth,WiFi是当今使用最广的一种无线网络传输技术, 几乎所有智能手机.平板电脑和笔记本电脑都支持Wi-Fi上网.因此,掌握基本的WiFI开发技术是非常必要的.本教程将围绕一个小D ...
- ADT中创建Android的Activity
去创建Activity New->Other->Android->Android Activity->BlankActivity: 输入对应的信息: 创建完毕后,可以看到新建了 ...
随机推荐
- Serverless 实战 —— Funcraft + OSS + ROS 进行 CI/CD
前言 首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute):函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传.函数计算准 ...
- 【题解】[HAOI2018]染色(NTT+容斥/二项式反演)
[题解][HAOI2018]染色(NTT+容斥/二项式反演) 可以直接写出式子: \[ f(x)={m \choose x}n!{(\dfrac 1 {(Sx)!})}^x(m-x)^{n-Sx}\d ...
- $Noip2018/Luogu5022$ 旅行
$Luogu$ $Description$ 一个$n$个点,$m$条边的图.$m=n-1$或$m=n$.任意选取一点作为起始点,可以去往一个没去过的点,或者回到第一次到达这个点时来自的点.要求遍历整个 ...
- Spring Boot入门(一)
Spring Boot入门 一.第一个Spring Boot程序 1.导入springBoot 依赖 <parent> <groupId>org.springframework ...
- JVM性能监测工具——VisualVM
Java本身自带了有好几个jvm监测工具,其中jconsole和jvisualvm这两个工具具有图形化界面,可以监测到cpu.类.线程.堆等一些参数,而且具有远程监控的能力. 启动:打开cmd命令窗口 ...
- sql计算上一周(解决了跨年会出错的问题)
1.问题描述: 使用YEARWEEK('时间字段')=YEARWEEK(NOW())-1来筛选上一周数据时,当遇到跨年的时候会出现计算错误的问题. eg: 如上图,当前日期为2020年1月6日.上图标 ...
- js中的事件委派
在介绍JS中事件委派之前先来看看一个简单的需求:为每一个超链接绑定一个单击响应函数并在控制台打印一句话,内容是:” a 标签的单击响应函数“.下面是这个需求的代码: <!DOCTYPE html ...
- docker练习-容器和服务
使用定义容器 Dockerfile Dockerfile定义容器内环境中发生的事情.对网络接口和磁盘驱动器等资源的访问在此环境中进行虚拟化,该环境与系统的其他部分隔离,因此您需要将端口映射到外部世界, ...
- springboot多环境(dev,test,prod)配置
前情提要 在我们开发工作中,常常因为配置的问题,搞得头昏脑大.开发环境.测试环境.配置各不相同,数据库.redis.注册中心等等参数都不一致,如果放在同一个配置文件,就会发现诸多注释,发布不同的环境, ...
- Web及网络基础学习(一)
---恢复内容开始--- 2019.10.16 1.TCP.IP分层 应用层.网络层.传输层.数据链路层 2.各层讲解 应用层 决定了向用户提供应用服务时通信的活动.例如FTP(File Trans ...