AppCompatActivity、ActionBarActivity、FragmentActivity和Activity的区别
2024-10-20 20:59:02
package com.chy.myapplication;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
/*
* support v4 FragmentActivity 兼容2.x模式下使用Fragment
* support v7 AppCompatActivity 兼容2.x模式下使用Fragment和ActionBar,ActionBarActivity是AppCompatActivity过时产品
* 如果3.0以上直接继承Activity,便可使用Fragment和ActionBar
*/
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
Activity 发展到3.0(大概)之后,可以使用fragment了,但是support v4 提供了1.6~3.0的fragment兼容,所以如果需要用兼容版的fragment,则需要继承support v4提供的FragmentActivity。
而后一点点时间之后,3.0(大概)出现的ActionBar也被向前支持了,这次是出现在support v7里,如果需要使用兼容版的actionbar,则继承support v7提供的ActionBarActivity(它是继承FragmentActivity的)。
再然后也就是去年年底到今年,5.0提供了很多很多新东西,于是support v7也更新了,出现了AppCompatActivity , 具体功能请自行查找。 ================================================================================================================================================================
以下内容来自Googlehttp://stackoverflow.com/questions/31297246/activity-appcompatactivity-fragmentactivity-and-actionbaractivity-when-tous
=======================================================================================================================================
Activity
is the base class of all other activities, I don't think it will be deprecated. The relationship among them is:
Activity
<<<FragmentActivity
<<< AppCompatActivity
<<< ActionBarActivity
'<<<' means inheritance here. The reference said ActionBarActivity
is deprecated, use AppCompatActivity
instead.
So basically, using AppCompatActivity
is always the right choise. The differences between them:
Activity
is the basic one.- Based on
Activity
,FragmentActivity
provides the ability to useFragment
. - Based on
FragmentActivity
,AppCompatActivity
provides features toActionBar
最新文章
- Leetcode2:Add Two Numbers@Python
- js event 事件冒泡和事件捕获详细介绍
- 对SQL Server SQL语句进行优化的10个原则
- Tomcat unable to start
- 软件介绍:搜索工具 Listary
- Gentoo 无线网络配置 wpa_supplicant
- Linux CentOS下MySQL的安装配置之浅谈
- PHP随机生成随机个数的字母组合示例
- 凭证(Credential)
- Jenkins 学习笔记(一):我对 Jenkins 的宏观认识
- nodejs搭建web服务器
- python web编程之网络基础
- mongodb数据分组按字符串split
- syzkaller 资料集合
- [iOS]改变UIAlertController的标题、内容的字体和颜色
- 搜索引擎:Elasticsearch与Solr
- linux信号量初识
- centos7搭建ANT+jmeter+jenkins接口测试自动化环境
- CentOS7使用阿里源安装最新版Docker
- Django 1.10中文文档-第一个应用Part7-自定义管理站点