Как добавить динамическое «меню параметров» к каждому элементу списка - PullRequest
0 голосов
/ 30 декабря 2018

Я хотел бы добавить меню к каждому элементу списка в ListFragment.Идея заключается в том, что он должен вести себя аналогично меню параметров на панели инструментов: он отображает как можно больше элементов списка рядом (в зависимости от размера экрана), а остальное доступно из раскрывающегося списка.

enter image description here

Есть что-нибудь подобное?(Этот снимок экрана был сделан с использованием статических макетов, просто чтобы отобразить его на экране)

@Override
public void onActivityCreated(Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);

    setListAdapter(new ArrayAdapter<>(getContext(), R.layout.fragment_list_item_device, android.R.id.text1, response.body()));
}

frag_list_item_device.xml.в каждом элементе списка: menu / popup.xml:

<menu
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">

    <item
        android:id="@+id/action_show_on_map"
        android:orderInCategory="100"
        app:showAsAction="ifRoom"
        android:icon="@drawable/ic_show_on_map_black_24dp"
        android:title="@string/action_show_on_map"
        />

    <item
        android:id="@+id/action_send_message"
        android:orderInCategory="200"
        app:showAsAction="ifRoom"
        android:icon="@drawable/ic_send_message_black_24dp"
        android:title="@string/action_send_message"
        />

    <item
        android:id="@+id/action_send_command"
        android:orderInCategory="300"
        app:showAsAction="ifRoom"
        android:icon="@drawable/ic_send_command_black_24dp"
        android:title="@string/action_send_command"
        />

    <item
        android:id="@+id/action_device_settings"
        android:orderInCategory="900"
        app:showAsAction="ifRoom|collapseActionView"
        android:icon="@drawable/ic_device_settings_black_24dp"
        android:title="@string/action_device_settings"
        />

</menu>
...