Xamarin Android всплывающее меню с заголовком - PullRequest
0 голосов
/ 01 мая 2018

Я пытаюсь сделать простое всплывающее меню, и я не могу добавить не кликаемый заголовок вверху. EX: Мой заголовок p1 p2 p3

Мой xml:

<?xml version="1.0" encoding="utf-8" ?>
<!--For all properties see: http://developer.android.com/guide/topics/resources/menu-resource.html-->

  <menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/key7" android:title="p1" showAsAction="always" />
    <item android:id="@+id/key6" android:title="p2" showAsAction="always" />
    <item android:id="@+id/key6" android:title="p3" showAsAction="always" />
  </menu>

И мой код

PopupMenu menu = new PopupMenu(this, ChangeKeyButton);
menu.Inflate(Resource.Menu.menu_tonacja);
menu.MenuItemClick += Menu_MenuItemClick;
menu.Show();

Я потратил много времени, чтобы найти это решение безрезультатно Спасибо

1 Ответ

0 голосов
/ 03 мая 2018

Кажется, всплывающее меню не может установить заголовок. Я думаю, вы могли бы вместо этого использовать PopupWindow .
Например:

    Button button = FindViewById<Button>(Resource.Id.button1);
    button.Click += (s, arg) => {            
        TextView textView = new TextView(this);
        textView.Text = "header";

        ListView listView = new ListView(this);
        listView.AddHeaderView(textView);                 
        var items = new string[] { "menu1", "menu2", "menu3" };
        listView.Adapter = new ArrayAdapter<string>(this, Resource.Layout.listitem, items);
        listView.ItemClick += List_ItemClick;

        PopupWindow popupWindow = new PopupWindow(this);
        popupWindow.Width = ViewGroup.LayoutParams.WrapContent;
        popupWindow.Height = ViewGroup.LayoutParams.WrapContent;
        popupWindow.ContentView = listView;               
        popupWindow.OutsideTouchable = false;
        popupWindow.Focusable=true;               
        popupWindow.ShowAsDropDown(button);
    };

А listitem.axml:

    <?xml version="1.0" encoding="utf-8"?>
    <TextView  
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:text="Text"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/textView1" />
...