2011-03-18 78 views
0

我在android應用程序的菜單上工作。我做了簡單的菜單。現在我想在上下文菜單上工作。任何人都可以給我一個例子,我應該如何繼續?android中的上下文菜單

+3

來吧。谷歌有點 - http://developer.android.com/guide/topics/ui/menus.html#context-menu – Klaus 2011-03-18 12:02:55

回答

0

編輯: 抱歉,但IST的相似,你必須註冊爲文本菜單視圖,然後你必須ovverride的創造和選擇的東西

registerForContextMenu([your view]) 

@Override 
public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) { 
    switch (item.getItemId()){ 
     case CONTEXT_ASSIS: 
      switch (item.getGroupId()){ 
       case CONTEXT_ASSIS: 

        break; 
      } 
      case R.id.navi: 
          break; 
        } 

} 

@Override 
public boolean onContextItemSelected(MenuItem item) { 
    switch (item.getItemId()){ 
     case CONTEXT_ASSIS: 
      switch (item.getGroupId()){ 

     case R.id.navi: 

      break; 
     case R.id.assis: 

      break; 
     case R.id.save_pos: 


      break; 
     case R.id.docs: 

      break; 

    } 
    return true; 
} 

//恩德編輯

@Override 
public boolean onCreateOptionsMenu(Menu menu) {  
    MenuInflater inflater = getMenuInflater();  
    inflater.inflate(R.menu.menutest, menu);  
    return true; 
} 

@Override 
public boolean onOptionsItemSelected(MenuItem item) {  
    // Handle item selection 
    boolean ret =super.onOptionsItemSelected(item); 
    switch (item.getItemId()) {  
     case R.id.rotate:  

      break; 
     case R.id.settings:  

      break; 
     case R.id.talk: 

     break; 
     case R.id.calendar: 

      break; 
     case R.id.speechsearch: 

      break; 
    } 
    return ret; 
} 
+0

這不是一個上下文菜單?他想要一個長按菜單的例子。 – Klaus 2011-03-18 12:01:29

+0

你確定這是上下文菜單嗎? – 2011-03-18 12:03:43

+0

是的,,,克勞斯上面提到的代碼是簡單的選項菜單,,, – User 2011-03-18 12:03:50

1

創建上下文菜單請看this ..這可能對您有用..

5

只需在onCreate方法中註冊上下文菜單d

@Override 
public void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.main); 
TextView tv = (TextView)this.findViewById(R.id.textViewId); 
registerForContextMenu(this.getTextView()); 
} 

在這裏創建文本菜單添加到此處項目

@Override 
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) 
{ 
menu.setHeaderTitle("Sample Context Menu"); 
menu.add(200, 200, 200, "item1"); 
} 

響應選定項目

@Override 
public boolean onContextItemSelected(MenuItem item) 
{ 
if (item.itemId() = some-menu-item-id) 
{ 
//handle this menu item 
return true; 
} 
… other exception processing 
} 

只是運行,讓你的上下文菜單:)

0

試試這個。 。

 registerForContextMenu(Listview); 

     @Override 
    public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) { 
    super.onCreateContextMenu(menu, v, menuInfo); 
    menu.add(Menu.NONE, 0, Menu.NONE, "Edit"); 
    menu.add(Menu.NONE, 1, Menu.NONE,"Delete"); 
    menu.add(Menu.NONE, 2, Menu.NONE,"Merge"); 
    //menu.add(Menu.NONE, 3, Menu.NONE,"Delete duplicate"); 
}