1. 程式人生 > >Eclipse新建android工程就報錯

Eclipse新建android工程就報錯

產生這個問題,是因為ADT到version 22或者之後,當在使用eclipse建立專案的時候就會自動引用android-support-v7-appcompat.jar這個庫,預設生成的Activity會extends到v7ActionBarActivity這個系統類,這就是原因所在。

既然知道原因了,那麼問題解決就簡單明瞭了,下來新建一個工程來介紹:


建立一個最低版本2.3,最高相容到19的版本來做測試。

建立好了會看見如下下圖效果,


報錯了,那麼要這麼解決呢?先刪掉menu吧,這個對我們沒用,至少我一直沒用過。

分析:1.建立這個工程,所選的jar是否需要指定,比方說要在2.2版本上使用actionbar和fragment,在專案中後就要匯入v4和v7這兩個庫,如果需要。那就匯入V7包,路徑是sdk\extras\android\support\v7\appcompat,



點選ok後上面v7報錯就解決了,現在來解決R檔案無法生成的原因大多情況都是xml檔案報錯。

找到如下:


檢視 res/values/styles.xml 下的報錯點。

 <style name="AppBaseTheme" parent="Theme.AppCompat.Light">

把這個改成

<style name="AppBaseTheme" parent="android:Theme.Light">

v11和v14相同改法,也可以直接刪掉不用。改好後就沒錯了。


執行試試:問啥問題了,



第二種方法就比價簡單了,刪掉v7包,


繼承Activity,或者自定義BaseActivity,再執行試試。


執行ok。

注意,有時候會報下面這錯。

[2016-07-28 09:18:15 - SocketDemo] W/ResourceType( 4360): ResXMLTree_node size 0 is smaller than header size 0x100.
[2016-07-28 09:18:15 - SocketDemo] E:\Androidtools\eclipse\w\SocketDemo\res\menu\main.xml:6: error: No resource identifier found for attribute 'showAsAction' in package 'com.example.socketdemo'

我們找到對應的menu.xml檔案

<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    tools:context="com.example.socketdemo.MainActivity" >


    <item
        android:id="@+id/action_settings"
        android:orderInCategory="100"
        android:title="@string/action_settings"
        app:showAsAction="never"/>


</menu>

刪掉app:showAsAction="never"

就可以了 。

總結。其實建立專案出來還有很多錯誤,只要細心,或者百度搜搜,在當今這個社會,還沒有解決不了的bug,只有不能解決的工程師,0.0

菜鳥筆記,不喜勿噴。

---------------------大笑----------------------

-----------------2016-07-26-----------------