我已经习惯了以下代码来显示最喜欢的项目列表。它通过上下文菜单具有删除功能。
@Override
public void onCreate(Bundle savedInstanceState) {
.........................
.........................
wordDataHelper = new WordDataHelper(getApplicationContext());
favCursor = wordDataHelper.getCursorFav();
startManagingCursor(favCursor);
// Now create a new list adapter bound to the cursor.
// SimpleListAdapter is designed for binding to a Cursor.
favAdapter = new SimpleCursorAdapter(
this, // Context.
android.R.layout.simple_list_item_1,
favCursor, // Pass in the cursor to bind to.
new String[] {WordDataHelper.ENGWORD}, // Array of cursor columns to bind to.
new int[] {android.R.id.text1}); // Parallel array of which template objects to bind to those columns.
// Bind to our new adapter.
setListAdapter(favAdapter);
list = getListView();
list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
// @Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenu.ContextMenuInfo menuInfo) {
menu.setHeaderTitle("Context Menu");
menu.add(0, CONTEXT_DELETE, 1, "Delete Item");
}
});
list.setTextFilterEnabled(true);
list.setClickable(true);
..................
..................
}
public boolean onContextItemSelected(MenuItem item) {
AdapterView.AdapterContextMenuInfo menuInfo = (AdapterView.AdapterContextMenuInfo) item
.getMenuInfo();
final Long wordId = menuInfo.id;
// selected_row = menuInfo.position;
// To get the id of the clicked item in the list use menuInfo.id
switch (item.getItemId()) {
case CONTEXT_DELETE:
deleteRes(wordId);
favCursor = wordDataHelper.getCursorFav();
((SimpleCursorAdapter) favAdapter).changeCursor(favCursor);
break;
default:
return super.onContextItemSelected(item);
}
return true;
}
一切正常。现在我想在没有要列出的项目时显示“没有最喜欢的项目”消息。怎么安排?