2010-04-07 38 views
18

ListView'im için Bağlam Menüsü oluşturmak için XML dosyası kullanıyorum. (Lütfen aşağıya bakın). Bu İçerik Menüsü için bir başlık da ayarlamak istiyorum. OnCreateContextMenu Yönteminde menu.setHeaderTitle (myContextMenuTitle) kullanabileceğim (http://www.mail-archive.com/[email protected]/msg43062.html numaralı telefondan) okudum. Ama bunu XML dosyasında ayarlamalıyım. Bunu nasıl başarabilirim?XML dosyası kullanarak Bağlam Menüsü nasıl oluşturulur?

ardından Yanlış bir şey yapıyorum varsa düzeltin onCreateContextMenu Yöntemi kodudur .. Bu benim context_menu.xml dosyasıdır: Bu

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:id="@+id/open" android:title="Open"/> 
</menu> 

olan benim onCreateContextMenu Yöntem:

@Override 
public void onCreateContextMenu(ContextMenu menu, View v, 
    ContextMenuInfo menuInfo) { 
    MenuInflater inflater = getMenuInflater(); 
    inflater.inflate(R.menu.context_menu, menu); 
    super.onCreateContextMenu(menu, v, menuInfo); 
} 

Bu benim onCreate yöntemidir:

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    // extras = getIntent().getExtras(); 

    registerForContextMenu(getListView()); 

    ... 
} 

cevap

11

Bunu yapmakta olduğunuz şekilde yapmak zorundasınız.

+0

Bunu mu demek istediniz: – Vasu

+1

Evet. Bunu yapmanın tek yolu menu.setHeader ile –

17

Menü nesnesinde setHeaderTitle("mytitle") yöntemini arayabilirsiniz. Geçersiz kılma yönteminde, menü nesnesini OnCreateContextMenu yönteminin paramrterı olarak alırsınız. bunu beğendi:

@Override 
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { 
    super.onCreateContextMenu(menu, v, menuInfo); 
    menu.setHeaderIcon(R.drawable.icon); 
    menu.setHeaderTitle("Share Menu."); 
    MenuInflater inflater = getMenuInflater(); 

    inflater.inflate(R.menu.contextmenu, menu); 
}  
İlgili konular