2011-08-19 52 views
2

我在不同的ListActivity中使用幾乎相同的代碼,並且它正在工作,但在這一個中它不起作用。Contextmenu沒有出現在ListActivity中

這是上下文菜單的代碼:

@Override 
public void onCreateContextMenu(ContextMenu menu, View v, 
     ContextMenuInfo menuInfo) { 
    super.onCreateContextMenu(menu, v, menuInfo); 


    menu.setHeaderTitle("Anything"); 
    menu.add(0, ContextMenu.NONE, 0, "Unsubscribe"); 
} 

這是整個ListActivity:

公共類UnwatchedEpisodesActivity擴展ListActivity {

private ArrayList<Episode> episodeList = new ArrayList<Episode>(); 

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    displayEpisodes(); 

} 

@Override 
public void onCreateContextMenu(ContextMenu menu, View v, 
     ContextMenuInfo menuInfo) { 
    super.onCreateContextMenu(menu, v, menuInfo); 


    menu.setHeaderTitle("Anything"); 
    menu.add(0, ContextMenu.NONE, 0, "Unsubscribe"); 
} 



@Override 
protected void onResume() { 
    super.onResume(); 

} 

任何想法,爲什麼這ISN」工作?當我長按一個項目時,沒有任何反應。 )

回答

2

在上的onCreate(添加此調用:

registerForContextMenu(getListView()); 
+0

謝謝您的建議。我只是試過這個,但它似乎沒有改變任何東西.. – networkprofile

+0

沒關係,那是做到了。但是我必須把它放在'displayEpisodes()'裏面,因爲這個類是tabhost中的一個選項卡。 – networkprofile