ActionBarActivity环境搭建步骤及遇到的问题总结

By | 04月24日
Advertisement

最近兼容到2.2甚至以下的版本,使用到了ActionBar,查看android官方解释看起来是个很简单的问题,不过本人走了点弯路,本文总结了一些遇到的问题与大家共勉。当然了你可以继续使用 Android开源项目ActionBarSherlock,来实现兼容方式,不过既然Android官方有兼容包推出,那最好使用官方的嘛。 首先把你的SDK升级到API-18,确认你的SDK中extras目录V7子目录有appcompat文件夹。

ActionBarActivity环境搭建步骤及遇到的问题总结

Android官网 具体使用 步骤 (针对于Eclipse):

Create a library project based on the support library code:

  1. Make sure you have downloaded the Android Support Library using the SDK Manager .
  2. Create a library project and ensure the required JAR files are included in the project's build path:
    1. Select File > Import .
    2. Select Existing Android Code Into Workspace and click Next .
    3. Browse to the SDK installation directory and then to the Support Library folder. For example, if you are adding the appcompat project, browse to /extras/android/support/v7/appcompat/ .
    4. Click Finish to import the project. For the v7 appcompat project, you should now see a new project titled android-support-v7-appcompat .
    5. In the new library project, expand the libs/ folder, right-click each .jar file and select Build Path > Add to Build Path . For example, when creating the the v7 appcompat project, add both the android-support-v4.jar and android-support-v7-appcompat.jar files to the build path.
    6. Right-click the project and select Build Path > Configure Build Path .
    7. In the Order and Export tab, check the .jar files you just added to the build path, so they are available to projects that depend on this library project. For example, the appcompat project requires you to export both the android-support-v4.jar and android-support-v7-appcompat.jar files.
    8. Uncheck Android Dependencies .
    9. Click OK to complete the changes.

You now have a library project for your selected Support Library that you can use with one or more application projects.

Add the library to your application project:

  1. In the Project Explorer, right-click your project and select Properties .
  2. In the Library pane, click Add .
  3. Select the library project and click OK . For example, the appcompat project should be listed as android-support-v7-appcompat .
  4. In the properties window, click OK .

Once your project is set up with the support library, here's how to add the action bar:

  1. Create your activity by extending ActionBarActivity .
  2. Use (or extend) one of the Theme.AppCompat themes for your activity. For example:
    <activity< span=""> android:theme="@style/Theme.AppCompat.Light" ... >
    

Now your activity includes the action bar when running on Android 2.1 (API level 7) or higher.

On API level 11 or higher

The action bar is included in all activities that use the Theme.Holo theme (or one of its descendants), which is the default theme when either the targetSdkVersion or minSdkVersion attribute is set to "11" or higher. If you don't want the action bar for an activity, set the activity theme to Theme.Holo.NoActionBar .

官方解释就这么多,但是大家难免走一些弯路:

1、我直接将android-support-v4.jar android-support-v7-appcompat.jar,放入到我的目标工程不就完事了嘛?!还整一堆步骤那么麻烦,那你就错了,看起来编译没错,实际运行的时候你会越到如下错误:

java.lang.RuntimeException: Unable to start activity ComponentInfo{jh.com.testandroidlayout/jh.com.testandroidlayout.navigator.NaviViewPagerActivity}: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.

这个时候你仔细看看,发现原来 继承自 ActionBarActivity的类必须指定固定的集中Theme风格,而这些 Theme 风格是需要导入V7中的 appcompat LIB库工程,编译后再引用才能引用使用。

黑色

android:theme="@style/Theme.AppCompat"

android:theme="@style/Theme.AppCompat.Light"

2、好的,那我们按照官方的步骤,老老实实的导入工程编译,注意拷贝式导入,并且编译成功。

ActionBarActivity环境搭建步骤及遇到的问题总结

但是我的应用工程在执行如下步骤后apply:

  1. In the Project Explorer, right-click your project and select Properties .
  2. In the Library pane, click Add .
  3. Select the library project and click OK . For example, the appcompat project should be listed as android-support-v7-appcompat .

报出如下 android-support-v7-appcompat 库引用错误的问题:

ActionBarActivity环境搭建步骤及遇到的问题总结

经过一番来回实验以后才发现原来需要将你的应用工程也要放在与 android-support-v7-appcompat放在同一个workspace 中才可以。最后环境搭建成功,你可以尽情使用ActionBarActivity啦。

参考:

http://snailz.diandian.com/post/2014-01-22/40060824622

http://blog.csdn.net/hkg1pek/article/details/9473265

http://blog.csdn.net/appte/article/details/11712591

Similar Posts:

  • [转]MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题)

    MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题) 网上有一篇shangdong_chu网友写的文章介绍如何在Eclipse上配置MonkeyRunner,做了挺好的一个描述,但经过我的试验在我的环境上碰到了Jython解析器出错的问题,且该文章缺少Pydev安装的步骤,所以这里按照本人的情况从新撰文描述如何在Eclipse上把MonkeyRunner的开发环境搭建起来. 1.环境 首先需要先描述下本人配置的环境,因为不确定其他环境

  • JEECG(J2EE Code Generation) J2EE智能开发框架 续一: 开发环境搭建步骤

    提醒: A.项目开发环境: MyEclipse6.5+jdk1.6+Tomcat6.0 B.目前已经测试通过的数据库有MySql5.Oracle10g.SqlServer200 C.建议使用google浏览器,EasyUI使用其他浏览器加载慢 在线演示:http://www.sapvm.net:8080/ Google Code:http://code.google.com/p/jeecg/ 视频下载:http://pan.baidu.com/share/link?shareid=162605&

  • Linux服务器Jboss运行环境搭建步骤和开机自动启动脚本编写运行

    Jboss运行环境:Linux+Jdk+Jboss+jsp系统 Jboss软件说明:类似于Tomcat,就是一个跑Jsp系统的环境,他的站点路径跟Tomcat类似,Tomcat存放站点文件到webapps目录下,而Jboss存放在server/default/deploy目录下. 本次开发环境和测试步骤如下: Linu操作系统:CentOS 64-bit JBoss软件下载地址 http://sourceforge.net/projects/jboss/files/JBoss/JBoss-4.2

  • 【Mysql】主从环境搭建步骤详解

    一. 架构图 软件版本:Linux.Mysql Server version: 5.6.15 二.操作过程 2.1 主从机各自配置my.cnf文件,此文件默认位置在/etc/my.cnf,无的可以直接从/usr/share/mysql/my-default.cnf复制过来并改名就可以了.文件后加入以下内容: log-bin=mysql-bin //[必须]启用二进制日志 server-id=222 //[必须]服务器唯一ID,默认是1,一般取IP最后一段,主从机ID不能一样 replicate-

  • [Mysql] 主从复制环境搭建步骤详解

    一.架构图 软件版本:Linux.Mysql Server version: 5.6.15 2.2 重启Mysql ***************************************主机操作****************************************** 2.3 在主机上创建master用户,从机创建slave用户,注意,master用户需要有赋予slave复制的权限 2.4 登录master用户 GRANT REPLICATION SLAVE ON *.* to

  • WNMP环境搭建步骤 nginx1.4.3+php-5.3.27+mysql-5.5+RunHiddenConsole

    安装目录:D:/webServer/ 所需软件: mysql-installer-community-5.5.34.0.msi 下载:http://cdn.mysql.com/Downloads/MySQLInstaller/mysql-installer-community-5.5.34.0.msi php-5.3.27-Win32-VC9-x86.zip 下载:http://windows.php.net/downloads/releases/php-5.3.27-Win32-VC9-x86

  • 转: Eclipse下Grails开发环境搭建步骤

    详情见附件. 原文出处: http://hi.baidu.com/dianjinglong/blog/item/c7860313db1fe4d6f7039ece.html

  • 【jmeter】jmeter环境搭建

    一. 工具描述 apache jmeter是100%的java桌面应用程序,它被设计用来加载被测试软件功能特性.度量被测试软件的性能.设计jmeter的初衷是测试web应用,后来又扩充了其它的功能.jmeter可以完成针对静态资源和动态资源(servlets, perl脚本, java对象, 数据查询s, ftp服务等)的性能测试. jmeter可以模拟大量的服务器负载.网络负载.软件对象负载,通过不同的加载类型全面测试软件的性能.并且jmeter提供图形化的性能分析. 二. 使用环境 JMet

  • Android 3 开发环境搭建

    Android 越来越火.未来手机屏.平板电脑屏.电视屏 三屏 合一大势所在,Android平台均有涉及,开发潜力无限.现有的软件都有可能需要转移到Android这个平台.一名开发人员,自然要跟上这个趋势.作为一个Android迟来者,我准备从Android 3 开始学习. 本文重要讲述我是怎样搭建这个开发环境的. 一.开发用到软件和版本: 1.Eclipse 3.5.2 2.SDK Setup 工具- 使用它下载和管理开发包 下载地址:http://dl.google.com/android/

  • windows 下 Objective C++ 编译环境搭建

    [摘要] 介绍Objective C++ 在windows 环境下的搭建知识. 注意, 本文的目的只是为了搭建一套学习语言的环境, 而非发布一个AppStore的应用. 如果要发布应用, Windows平台似乎无能为力, 因此如果找寻发布应用的环境搭建. 与本文无关. [核心内容] 通过GCC编译环境实现对Objective C++的编译. 原本采用 Cygwin + GNUstep, 发现Cygwin配置存在问题, 后面改用GNUStep官方使用的MinGw直接一键式安装. Cygwin的安装

Tags: