fragment和activity的区别

2020-10-11  本文已影响0人  起飞的锤子

Activity

生命周期

引起 Activity 重新创建的系统配置

android.content.res.Configuration 中的许多成员变量,都属于系统配置的 item, 比如屏幕方向,系统语言等。如果不想因为某项内容改变而引起 Activity 重新创建的话,可以在清单文件里指定。

<activity

    android:name=".MainActivity"

    android:configChanges="orientation" />

Fragment

基本概念

Fragment,简称碎片,是Android 3.0(API 11)提出的,为了兼容低版本,support-v4库中也开发了一套Fragment API,最低兼容Android 1.6。

生命周期

Fragment的生命周期和Activity类似,但比Activity的生命周期复杂一些

区别

Activity 代表了一个屏幕的主体,而Fragment可以作为Activity的一个组成元素。
一个Activity可以有若干个(0或n)Fragment构成。你可以把Fragment想象成Activity中的一个控件,只不过相对于一般控件,Fragment与Activity联系更为紧密,随着Activity的生命周期变化,Fragment也随之相应不同的生命周期函数。
Fragment 从功能上讲相当于一个子活动(Activity),它可以让多个活动放到同一个屏幕上,也就是对用户界面和功能的重用,因为对于大屏设备来说,纯粹的 Activity 有些力不从心。
Fragment 像是一个子活动,但是 Fragment 不是 Activity 的扩展,因为 Fragment 扩展自 android.app 中的 Object,而 Activity 是 Context 的子类。
一个Activity可以运行多个 Fragment,Fragment不能脱离Activity而存在,只有Activity才能作为接收intent的载体。其实两者基本上是载体和组成元素的关系。

上一篇 下一篇

猜你喜欢

热点阅读