android之activity全面解析

本文深入探讨了Android中的Activity,重点介绍了AppCompatActivity的变化、全屏实现方法、Intent的数据传递方式,包括显式和隐式启动。此外,文章详细讲解了Activity的生命周期,包括保存和恢复状态,以及不同场景下的生命周期调用情况。最后,讨论了Activity的四种启动模式(Standard、SingleTop、SingleTask、SingleInstance)及其应用场景,并简单提及了Activity的进入和退出动画。
摘要由CSDN通过智能技术生成

所以现在最常用的还是AppcompaActivity,AppcompaActivity其实也是ActionBarActivity 修改而来。

AppcompaActivity相对于Activity的变化;

1、 主界面带有toolbar的标题栏;

2 、theme主题只能用android:theme=”@style/AppTheme (appTheme主题或者其子类),而不能用android:style

否则会提示错误:

Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.

activity实现全屏(去掉标题栏和状态栏)的两种方法

1、需要在setContentView方法调用之前设置。

requestWindowFeature(Window.FEATURE_NO_TITLE);

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,

WindowManager.LayoutParams.FLAG_FULLSCREEN);

2、 定义一个主题,在styles.xml里面并引用。

[](()Intent 启动Activity和传递数据

-------------------------------------------- 《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》无偿开源 徽信搜索公众号【编程进阶路】 ----------------------------------------

1.intent.putExtra(key,value):

//key一般是String,值为 java八大基本数据类型及对应的数组,String及对应的数组,序列化 Serializable Parcelable的对象及对应的数组等

2.intent.putExtras(bundle);

3.intent.putExtra(key,bundle)

Main2Activity(目标文件):

1.intent.getXXXExtra(key)获取值

2.bundle=intent.getExtras()

3.bundle=intent.getExtras(key)

//显式跳转

val intent= Intent(this,Main2Activity::class.java)

startActivity(intent)

//传参

val intent1= Intent(this,Main2Activity::class.java)

intent1.putExtra(“name”,“小明”)

startActivity(intent)

//Main2Activity中

val name=intent.getStringExtra(“name”)

//bundle传参

val bundle=Bundle()

bundle.putString(“name”,“小明”)

val intent2= Intent(this,Main2Ac

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值