为什么每当我创建一个新项目时,Eclipse都会自动添加appcompat v7库支持?
我正在创建一个简单的项目,它的MainActivity应该扩展Activity,但它没有。Eclipse自动添加操作栏支持。
我如何创建一个简单的项目没有appcompat库?供您参考,我已经下载了最新版本的ADT,最近更新了所有内容。我使用的是windows7 x64。
为什么每当我创建一个新项目时,Eclipse都会自动添加appcompat v7库支持?
我正在创建一个简单的项目,它的MainActivity应该扩展Activity,但它没有。Eclipse自动添加操作栏支持。
我如何创建一个简单的项目没有appcompat库?供您参考,我已经下载了最新版本的ADT,最近更新了所有内容。我使用的是windows7 x64。
当前回答
我注意到在创建ADT 22.6.2版本的新android项目时创建了“appcompat”库,即使minSDK设置为11,targetSDK设置为19
这是因为,在新的项目模板中,android正在使用一些来自支持库的属性。例如,如果一个新项目是用actionbar创建的,那么在菜单的main.xml中,你可以从支持库中找到app:showAsAction="never"。
If the app is targeted at android version 11 and above then one can change this attribute to android:showAsAction in menu's main.xml Also the default theme set could be "Theme.AppCompat.Light.DarkActionBar" as shown below (styles.xml) <style name="AppBaseTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <!-- API 14 theme customizations can go here. --> </style> In this case the parent theme in style.xml has to be changed to "android:style/Theme.Holo.Light.DarkActionBar" In addition to this if reference to Fragment,Fragments Manager from support library was made in the code of MainActivity.java, these have to appropriately changed to Fragment, FragmentManager of the SDK.
其他回答
根据http://developer.android.com/guide/topics/ui/actionbar.html
ActionBar API最初是在Android 3.0 (API级别11)中添加的,但它们也可以在支持库中使用,以兼容Android 2.1 (API级别7)及以上。
简而言之,你所看到的自动生成项目模块化了将ActionBar添加到api 7-10的过程。
有关该主题的简化解释和教程,请参阅http://hmkcode.com/add-actionbar-to-android-2-3-x/。
正如Android的支持库概述中所述,默认情况下包含支持库被认为是一个很好的实践,因为设备的多样性很大,并且存在于不同版本的Android(以及所提供的api)之间。
这就是为什么Eclipse中包含的Android代码模板工具通过Android开发工具(ADT)默认集成它们的原因。
我注意到在示例中您的目标是API 15,但是包所需的最小SDK是API 10,为此兼容性库可以提供大量向后兼容的API。一个例子就是在运行该系统旧版本的设备上使用API 11 (Android 3.0 Honeycomb)上出现的Fragment API。
还需要注意的是,您可以在默认情况下禁用支持库的自动包含。
I'm new with Android and the project appcompat_v7 always be created when I create new Android application project makes me so uncomfortable. This is just a walk around. Choose Project Properties -> Android then at Library box just remove appcompat_v7_x and add appcompat_v7. Now you can delete appcompat_v7_x. Uncheck Create Activity in create project wizard doesn't work, because when creating activity by wizard the appcompat_v7_x appear again. My ADT's version is v22.6.2-1085508. I'm sorry if my English is bad.
创建一个新的Android应用程序项目,取消第二步(配置项目)中的创建活动。
之所以包含它,是因为您的最低SDK版本设置为10。ActionBar是在API 11中引入的。Eclipse会自动添加它,这样你的应用就能在你支持的所有android版本中看起来更加一致。