当前位置: 首页 > news >正文

衡阳网站定制武汉it培训机构排名前十

衡阳网站定制,武汉it培训机构排名前十,哪家公司做网站便宜,网站后台账号密码忘记了本文的代码是在主Activity中,重载了几个生命周期函数,在日志中打印出对应的日志信息,有两个按钮,负责启动另外的Activity,并回到主Activity 由此查看日志,来体会生命周期。 MainActivity.kt 文件如下 pac…

本文的代码是在主Activity中,重载了几个生命周期函数,在日志中打印出对应的日志信息,有两个按钮,负责启动另外的Activity,并回到主Activity 由此查看日志,来体会生命周期。

MainActivity.kt 文件如下

package com.example.newactivitylifecycletestimport android.content.Intent
import android.os.Bundle
import android.util.Log
import android.widget.Button
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview
import com.example.newactivitylifecycletest.ui.theme.NewActivityLifeCycleTestThemeclass MainActivity : ComponentActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)Log.d("MainActivity","onCreate:Activity 第一次被创建的时候调用")setContentView(R.layout.activity_main)val startNormalActivity:Button = findViewById(R.id.startNormalActivity)//后加的代码startNormalActivity.setOnClickListener{val intent= Intent(this,NormalActivity::class.java)startActivity(intent)}val startDialogActivity:Button = findViewById(R.id.startDialogActivity)//后加的代码startDialogActivity.setOnClickListener{val intent= Intent(this,DialogActivity::class.java)startActivity(intent)}/*setContent {NewActivityLifeCycleTestTheme {// A surface container using the 'background' color from the themeSurface(modifier = Modifier.fillMaxSize(),color = MaterialTheme.colorScheme.background) {Greeting("Android")}}}*/}override fun onStart(){super.onStart()Log.d("MainActivity","onStart:在Activity由不可见变为可见的时候调用")}override fun onResume(){super.onResume()Log.d("MainActivity","onResume:在Activity准备好和用户进行交互的时候调用")}override fun onPause(){super.onPause()Log.d("MainActivity","onPause:在系统准备去启动或者恢复另一个Activity的时候调用")}override fun onStop(){super.onStop()Log.d("MainActivity","onStop:在Activity完全不可见的时候调用")}override fun onDestroy(){super.onDestroy()Log.d("MainActivity","onDestroy:在Activity被销毁之前调用")}override fun onRestart(){super.onRestart()Log.d("MainActivity","onRestart:在Activity由停止状态变为运行状态之前调用,即重启之后")}
}

NormalActivity.kt 和DialogActivity.kt 内容不重要,就略过了。

activity_main是主Activity的布局文件,就是声明了两个按钮。

内容如下:

<?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"><Buttonandroid:id="@+id/startNormalActivity"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="Start NormalActivity"tools:ignore="MissingConstraints" /><Buttonandroid:id="@+id/startDialogActivity"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="Start DialogActivity"tools:ignore="MissingConstraints" /></LinearLayout>

运行起来会看到界面:

这个时候,日志会出现很多内容,我们只需要关注这三个:

2023-11-29 20:46:12.370 32638-32638 MainActivity            com...mple.newactivitylifecycletest  D  onCreate:Activity 第一次被创建的时候调用
2023-11-29 20:46:12.508 32638-32638 MainActivity            com...mple.newactivitylifecycletest  D  onStart:在Activity由不可见变为可见的时候调用
2023-11-29 20:46:12.510 32638-32638 MainActivity            com...mple.newactivitylifecycletest  D  onResume:在Activity准备好和用户进行交互的时候调用

可以想得出来,一个Activity先是被创建,然后是从不可见变为可见,然后是为和用户交互做准备

这个时候,如果点击startNormalActivity按钮,会出现这个activity,这个就是中间显示出来一段文字。,这个normalActivity会压盖原来的mainActivity,这个时候,日志中会出现:

2023-11-29 21:33:35.867 32638-32638 MainActivity            com...mple.newactivitylifecycletest  D  onPause:在系统准备去启动或者恢复另一个Activity的时候调用
2023-11-29 21:33:36.812 32638-32638 MainActivity            com...mple.newactivitylifecycletest  D  onStop:在Activity完全不可见的时候调用

然后这个时候操作上用鼠标点击虚拟出来的手机的back按钮,我虚拟的是Pixel_API_30,这个时候界面回到了mainActivity(就是有两个按钮的界面)再来看看日志会出现:

2023-11-29 21:38:16.891 32638-32638 MainActivity            com...mple.newactivitylifecycletest  D  onRestart:在Activity由停止状态变为运行状态之前调用,即重启之后
2023-11-29 21:38:16.891 32638-32638 MainActivity            com...mple.newactivitylifecycletest  D  onStart:在Activity由不可见变为可见的时候调用
2023-11-29 21:38:16.893 32638-32638 MainActivity            com...mple.newactivitylifecycletest  D  onResume:在Activity准备好和用户进行交互的时候调用

这个时候操作上点击第二个按钮:StarDialogActivity,这个DialogActivity由于是对话框式的,故并没有压盖mainActivity,点击后出现界面如下:

这个时候日志中出现:

2023-11-29 21:41:55.247 32638-32638 MainActivity            com...mple.newactivitylifecycletest  D  onPause:在系统准备去启动或者恢复另一个Activity的时候调用

这个时候,如果点击虚拟出来的手机的back箭头,就回到了mainActivity,这个时候日志会出现:

2023-11-29 21:44:26.052 32638-32638 MainActivity            com...mple.newactivitylifecycletest  D  onResume:在Activity准备好和用户进行交互的时候调用

对理解Activity的生命周期有一定的帮助。

http://www.dt0577.cn/news/29412.html

相关文章:

  • 企业网站pc优化厦门关键词优化企业
  • 中国建设银行官网站黄金部王毅seo网站诊断
  • 做网站卖酒推广普通话的意义是什么
  • dede后台做两个网站优化防疫措施+科学精准防控
  • 网站建设编写代码问题seo sem是什么职位
  • 做任务 网站郑州seo教程
  • 海外购物网站上填手机号码怎么做深圳网页搜索排名提升
  • 品牌网站建设优化公司排名怎么登录百度app
  • 网站备案表网址大全下载
  • 网络营销策略的演变石家庄百度推广排名优化
  • 凡科网站制作百度软件优化排名
  • 如何建设网站兴田德润简介呢360推广客服电话是多少
  • 怎么做一个自己网站随州网络推广
  • 公司网站简介2024年1月新冠高峰
  • 东莞常平镇有利于seo优化的是
  • 福州网站建设需要多少钱营销顾问公司
  • 公司域名注册要收费吗seo推广优化平台
  • 漳州最专业的网站建设公司优化官网咨询
  • 网站建设电销免费的网络营销方式
  • 重庆政府采购平台网站优化网站
  • 东莞主页网站制作百度搜索风云榜排行榜
  • 武汉尚软科技做网站怎么样google移动服务应用优化
  • 互联网小白怎么入门如何进行网站性能优化
  • 中国上市公司排名seo怎么才能优化好
  • 学ps网课平台哪个好seo优化网站的手段
  • 做垂直导购网站还行吗前端seo是什么意思
  • 企业网站百度认证网站收录提交工具
  • 页面简单的网站长沙seo霸屏
  • 网新科技做网站怎么样免费seo推广公司
  • 手机网站建设教程广东网站关键词排名