Android Can';无法获取要填充的tabhost选项卡小部件

Android Can';无法获取要填充的tabhost选项卡小部件,android,sqlite,android-tabhost,Android,Sqlite,Android Tabhost,我有一个问题,我试图在今晚11:59完成一个应用程序,我正在使用一个SQLite db for android,它应该填充一个来自数据库的新列表标题。问题是它不是。我所做的是从Actionbar菜单项调用一个活动,它启动了新的意图 case R.id.menuAddList: Intent listIntent = new Intent(this, AddListActivity.class); listIntent.putExtra("tab",

我有一个问题,我试图在今晚11:59完成一个应用程序,我正在使用一个SQLite db for android,它应该填充一个来自数据库的新列表标题。问题是它不是。我所做的是从Actionbar菜单项调用一个活动,它启动了新的意图

case R.id.menuAddList:
            Intent listIntent = new Intent(this, AddListActivity.class);
            listIntent.putExtra("tab", tabHost.getCurrentTabTag());
            startActivity(listIntent);
            break;
当我进入这个活动时,我可以用一个EditText小部件编辑文本,该小部件更新数据库中的列表列,这很好,并且数据库用新的列表项更新。这是代码

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()){
        case R.id.menuSave:
            saveToDatbase();
            this.finish();
            break;
        case R.id.menuCancel:
            this.finish();
            break;
    }
    return super.onContextItemSelected(item);
}

private void saveToDatbase() {
    // Get the data from the widgets
    int listID = addlistSpinner.getSelectedItemPosition() + 1;
    String name = newListNameEditText.getText().toString();


    // If there is no item name, then exit the method
    if ( name == null || name.equals("")) {
        return;
    }

    // If in add mode, create a new list item
    if(!editMode) {
        list = new List();
    }

    // Put some data in the list
    list.setId(listID);
    list.setName(name);


    // Update or insert item data
    if(editMode) {
        db.updateList(list);

    }
    else {
        db.insertList(list);
    }
}

@Override
public boolean onKey(View view, int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER) {
        // Hide the soft keyboard
        InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
        return true;
    }
    else if (keyCode == KeyEvent.KEYCODE_BACK) {
        saveToDatbase();
        return false;
    }
    return false;
}
}


问题是,当我单击设备上的“添加项目”图标或“上一步”按钮时,除非退出应用程序并返回到该应用程序,否则新列表对象不会填充到“新建”选项卡上

您必须更新存储在为listview提供的列表适配器中的列表

mListAdapter.setList(****new data****);
mListAdapter.notifyDataSetChanged();
mList.invalidate();
setList函数将新数据放入适配器。Setlist是一个自定义函数,必须放在自定义适配器中。调用notifyDataSetChanged应重新加载适配器,而使listview无效将重新加载listview并显示新信息