Как упоминает @ Grx70 в комментарии к этому ответу, жест [h2] мыши, определенный в родительском ListView
, не будет работать для ListViewItem
, потому что этот элемент обрабатывает этот жест, чтобы получить фокус, (g2).
Вы можете перенести свою обработку InputBinding
на ListViewItem
:
Вы также можете узнать больше о работе InputBinding
в это qestion , есть ответ, объясняющий это. Ответ также предполагает создание приложенного поведения.
Есть замечательные работы Хосе Валима Мокса и явные контракты . В нем говорится, что
всегда считают «mock» существительным , а не глаголом
blockquote>
. 112] функция генерации . Вам лучше создать генератор и поиздеваться над ним.
Примерно так:
defmodule Generator do @callback gen_id :: integer() end defmodule NanoGenerator do @moduledoc "Used in dev/prod" @behaviour Generator @impl true def gen_id() do get_nano_id() # external function or whatever end end defmodule TestGenerator do @moduledoc "Used in test" @behaviour Generator use Agent # to store state @ids ~w|foo foo bar| @impl true def gen_id() do id = # get the counter from Agent, and increase it @ids[id] end end
Теперь у вас все готово вернуть все, что вы хотите из генератора.