2013-12-26 3 views
4

привет, ребята, вот изображение моего контекстного меню , но я не знаю, как я могу настроить его вид?Настроить представление контекстного меню в android?

я создал контекстное меню, с помощью этого кода

@Override 
    public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) 
    {//local=v; 
        super.onCreateContextMenu(menu, v, menuInfo);  
        info = (AdapterContextMenuInfo) menuInfo; 
        menu.add(Menu.NONE, v.getId(), 0, "Play"); 
        menu.add(Menu.NONE, v.getId(), 0, "Queue song");     
        menu.add(Menu.NONE, v.getId(), 0, "Edit tags"); 
        menu.add(Menu.NONE, v.getId(), 0, "Set as ringtone"); 
        menu.add(Menu.NONE, v.getId(), 0, "View details"); 
        menu.add(Menu.NONE, v.getId(), 0, "Delete"); 

    } 

enter image description here

но я wan't мое меню, чтобы выглядеть, как показано ниже ............. i wan't знать, как я могу изменить цвет и т. Д. Контекстного меню? Также фиолетовая линия, которая появляется, это то, что девять изображений патча ???

enter image description here

+0

Вы хотите установить заголовок в своем контекстном меню? – GrIsHu

+0

@GrIsHu да и многое другое .... как я уже сказал, я хочу настроить его тоже –

+0

Посмотрите мой ответ. – GrIsHu

ответ

2

Я путать с вопросом немного, поправьте меня, если я ошибаюсь,

Случай 1: Вы просто хотите установить название как второе изображение вы вставили. Для этого нужно просто setTitle() как menu.setHeaderTitle("Select Option");, Итак, весь код должен быть таким,

@Override 
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) 
{//local=v; 
       super.onCreateContextMenu(menu, v, menuInfo);  
       info = (AdapterContextMenuInfo) menuInfo; 
       menu.setHeaderTitle("Select Option"); 
       menu.add(Menu.NONE, v.getId(), 0, "Play"); 
       menu.add(Menu.NONE, v.getId(), 0, "Queue song");     
       menu.add(Menu.NONE, v.getId(), 0, "Edit tags"); 
       menu.add(Menu.NONE, v.getId(), 0, "Set as ringtone"); 
       menu.add(Menu.NONE, v.getId(), 0, "View details"); 
       menu.add(Menu.NONE, v.getId(), 0, "Delete"); 

} 

Случай 2: Вы спрашиваете о какой-либо другой Themes.In этом случае вы должны использовать другую тему контекстного меню ,

Дело 3: Вы полностью хотите изменить пользовательский интерфейс и хотите создать собственный интерфейс. В этом случае вам нужно будет create custom dialog и использовать в качестве контекстного меню.

+0

koi библиотека pata hai kya? –

3

Вы можете использовать AlertDialog для реализации любого настраиваемого контекстного меню. создать пользовательский стиль на

AlertDialog.Builder.setCustomTitle(View customTitleView) & AlertDialog.Builder.setView(View view) 

Вы можете прослушивать длительное событие печати и всплывать в этом диалоговом окне.

+0

Как вы будете отслеживать позицию позиции при нажатии, если у вас есть список в вашем AlertDialog? –

Смежные вопросы