2012-06-25 75 views
3

我已經借了魏萌李的「開頭的Android應用開發」下面的代碼:Android的教程錯誤

import android.content.Context; 
import android.database.SQLException; 
import android.database.sqlite.SQLiteDatabase; 
import android.database.sqlite.SQLiteOpenHelper; 
import android.util.Log; 

public class DBAdapter { 

    private static final String TAG = "DBAdapter"; 
    private static final String DATABASE_NAME = "MyDB"; 
    private static final int DATABASE_VERSION = 1; 
    private static final String DATABASE_CREATE = 
      "create table contacts (_id integer primary key autoincrement, " 
        + "name text not null, email text not null);"; 
    private final Context context; 
    private DatabaseHelper DBHelper; 
    private SQLiteDatabase db; 
    public DBAdapter (Context ctx) 
    { 
     this.context = ctx; 
     DBHelper = new DatabaseHelper(context); 
    } 

    private static class DatabaseHelper extends SQLiteOpenHelper 
    { 
     DatabaseHelper(Context context) 
     { 
      super(context, DATABASE_NAME, null, DATABASE_VERSION); 
     } 

     @Override 
     public void onCreate(SQLiteDatabase db) 
     { 
      try { 
       db.execSQL(DATABASE_CREATE); 
      } catch (SQLException e) { 
       e.printStackTrace(); 
      } 
     } 

     @Override 
     public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) 
     { 
      Log.w(TAG, "Upgrading database from version " + oldVersion + " to " 
        + newVersion + ", which will destroy all old data"); 
      db.execSQL("DROP TABLE IF EXISTS contacts"); 
      onCreate(db); 
     } 
    } 
} 

還有更精彩的,但我試圖簡化。

我收到以下錯誤:

描述資源路徑位置類型

令牌 「),」 語法錯誤,{預期此令牌DBAdapter.java

末後的onUpgrade

語法錯誤,插入「}」以完成ClassBody DBAdapter.java

語法錯誤,插入 「}」 在onCreate

末我是新來的Android完成ClassBody DBAdapter.java

的應用,因此可能有人請幫助我理解這些消息?

這裏是Eclipse是顯示:

enter image description here

+1

你試過插入「}」嗎? –

+1

它看起來十字是灰色的,所以錯誤被刪除?嘗試清潔,並建立 –

+0

我需要點擊保存按鈕來更新我所有的faffing編輯! – John

回答

2

這些都是從編譯器告訴你的消息,你的括號{}和/或括號()該文件中不平衡。如果您複製/粘貼此代碼,請確保您沒有錯過最後的支撐或類似的東西。你發佈的代碼看起來很平衡,所以它必須在文件中更進一步。

HTH

+0

即使粘貼了代碼,錯誤仍然存​​在。 – John

+0

屏幕截圖中的那些灰色x標記不表示Eclipse中存在的現有錯誤,它們標記之前的錯誤已經得到糾正。當前錯誤被標記爲紅色。 – Devunwired

+0

實際上只是從另一個方向粘貼,並且灰色的'x'消失了(在Ctrl-S之後)。這導致我得出結論,錯誤信息並不像我所知的那樣是最新的。謝謝。 – John

0

嘗試構造

DatabaseHelper(Context context) 

前加入市民應

public DatabaseHelper(Context context) 
0

是的,從上面可以看出,需要一個支柱。特別是如果你只是複製/粘貼代碼。右鍵單擊錯誤,單擊「轉到」,然後添加/刪除(取決於您的問題)所需的標記。