Activity

Posted DaLiangChen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Activity相关的知识,希望对你有一定的参考价值。

一、介绍 

Activity 是 android 的四大组件之一,主要用于提供窗口与用户进行交互。

 

二、Activity生命周期

Activity生命周期如下图:

函数

说明

protected void onCreate(Bundle savedInstanceState)

Activity被创建,此时不可见
protected void onStart()

界面显示可见

protected void onRestart()

重新显示页面

protected void onResume()

继续(获取焦点,可操作)

protected void onPause()

暂停(失去焦点,不可操作)

protected void onStop()

停止工作(隐藏)

protected void onDestroy()

销毁、释

根据不同的生命周期状态,Activity可以分为以下四种生命周期状态

  • Active 运行状态

  • Pause 暂停状态

  • Stop 停止状态

  • Killed 消亡状态

 

三、多个Activity界面

如果想有多个启动图标,需要对Activity设置LAUCHER

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

 

四、Activity的启动方式

1.隐式启动

隐式启动即可以调用App内部Activity ,也可以调用其他过滤到包含启动Action 的Activity。

//第一种写法
Intent intent = new Intent();
intent.setAction("String_activity");
startActivity(intent);


//第二种写法
Intent intent = new Intent("String_activity");
startActivity(intent);

2.显式启动

显示启动常用于app 内部 Activity 的启动。

Intent intent=new Intent();
intent.setClass(this,NewAcivity.class);
startActivity(intent);

需要在 AndroidManifest.xml 中添加需要启动的 Activity 信息

  <activity android:name=".NewAcivity"></activity>

 

以上是关于Activity的主要内容,如果未能解决你的问题,请参考以下文章

片段 MyFragment 未附加到 Activity

将字符串数据从Activity发送到片段[关闭]

如何在 ViewPager 中从 Activity 移动到 Fragment?未找到片段 ID 的视图

片段 - 您是不是必须在包含整个 Activity 的片段周围使用 Activity Wrapper?

如何将片段中的 ListView 对象的数据传递给 Activity?

add application window with unknown token XXX Unable to add window;is your activity is running?(代码片段