2009-12-11 113 views
0

我正在創建一個小應用程序。在查看頁面我正在執行數據庫的更新和刪除操作,並在頂部顯示數據(例如10條記錄)。在底部,我有2個按鈕,編輯和刪除。如果用戶點擊編輯按鈕,它將重定向到編輯頁面。在編輯頁面中,我正在顯示用於編輯的內容,同時我有2個按鈕更新和取消。如果用戶再次點擊更新,我正在重定向(使用開始活動)來查看頁面。它不顯示新記錄。我回到主頁,然後我點擊查看頁面,現在它已更新如何解決這個問題?另一個問題是,如果用戶點擊返回按鈕,它會去所有我去過的頁面(通過重定向頁面)。後退按鈕問題

例如,首先從主頁面點擊查看頁面。在查看頁面正在進行編輯和刪除操作。完成後,它進入查看頁面。在這裏,我點擊返回按鈕它正在前一頁是我最後執行的編輯或刪除頁面。我需要從視圖中進入主頁面(執行編輯或刪除操作後)如何做到這一點?

+0

庫馬爾你應該一次只問一個問題。你應該將這個問題編輯爲一個,併爲另一個問題創建一個新問題。 – 2009-12-11 15:50:11

+0

您可能還想要顯示一些代碼以幫助我們更好地理解問題。 – 2009-12-11 16:00:30

+0

我也建議使用一些標點符號。讀這個問題現在真的很難! – 2009-12-11 16:40:02

回答

0

對於用戶編輯數據的問題,結果未顯示,請確保您使用新數據填充數據。有關更多信息,請參見this

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    mDbHelper = new NotesDbAdapter(this); 
    mDbHelper.open(); 

    setContentView(R.layout.note_edit); 

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

    Button confirmButton = (Button) findViewById(R.id.confirm); 

    mRowId = savedInstanceState != null ? savedInstanceState.getLong(NotesDbAdapter.KEY_ROWID) : null; 
    if (mRowId == null) { 
     Bundle extras = getIntent().getExtras(); 
     mRowId = extras != null ? extras.getLong(NotesDbAdapter.KEY_ROWID) : null; 
} 

private void populateFields() { 
    if (mRowId != null) { 
     Cursor note = mDbHelper.fetchNote(mRowId); 
     startManagingCursor(note); 
     mTitleText.setText(note.getString(
       note.getColumnIndexOrThrow(NotesDbAdapter.KEY_TITLE))); 
     mBodyText.setText(note.getString(
       note.getColumnIndexOrThrow(NotesDbAdapter.KEY_BODY))); 
    } 
}