2011-12-15 63 views
0

我正在看android教程中的Noteadv2。一切正常,只是一件小事。我的「確認按鈕」沒有單擊聆聽者。我知道爲什麼發生這種情況,解決方案中的代碼實際上是相同的,但本教程給出的期望是您應該能夠創建和刪除一個筆記。到目前爲止,沒有好的。Android Noteadv2。確認按鈕沒有點擊監聽器

因此,我們在Notepadv2.onMenuItemSelected(...)中開始創建活動的調用堆棧。它說,像這樣的東西:

@Override 
public boolean onMenuItemSelected(int featureId, MenuItem item) { 
    switch(item.getItemId()) { 
    case INSERT_ID: 
     createNote(); 
     return true; 
    } 

    return super.onMenuItemSelected(featureId, item); 
} 

然後我們的朋友createNote()說:

private void createNote() { 
     Intent i = new Intent(this, NoteEdit.class); 
     startActivityForResult(i, ACTIVITY_CREATE); 
    } 

因此Android,這麼好聽,路由請求和CRUDs我們根據我們的清單中包含一個NoteEdit類。迄今爲止都很棒。下面是NoteEdit.onCreate()中的有趣點:

@Override 
protected void onCreate(Bundle savedInstanceState) {   
    super.onCreate(savedInstanceState); 

    setContentView(R.layout.note_edit); 
    setTitle(R.string.edit_note); 

    mTitleText = (EditText) findViewById(R.id.title); 
    mBodyText = (EditText) findViewById(R.id.body); 
    Button confirmButton = (Button) findViewById(R.id.confirm); 

    mRowId = null; 
    Bundle extras = getIntent().getExtras(); 
    if (extras != null) { 

最後兩行是關鍵。在此之後,我們在確認按鈕上添加一個點擊事件監聽器,該監聽器永遠不會完成。

當我們從當前的活動意圖中抽出額外費用時,那些額外費用就不存在了。有意義嗎?他們從來沒有設置cuz這是新的..因爲extras是空的if語句退出,我們在調試時停留在編輯屏幕上。

是否有我錯過的默認設置。我是否跳過了一個步驟,或者再次在日食中玩愚蠢的雞毛狗?

感謝您的閱讀。

回答

0

好吧..愚蠢的東西在我身上。我已經在if語句中完成了偵聽器附件,當它應該在該語句之外時。

我翻遍瞭解決方案文件,發現了這種差異。哎呀!