Я пытаюсь работать с элементом управления Spinner. Я успешно реализовал .setOnItemSelectedListener()
и пытался реализовать .setOnItemLongClickListener()
.
Меня заставили поверить, что Spinner будет поддерживать .setOnItemLongClickListener()
, потому что я видел это окно завершения кода Android Studio (см. Изображение ниже).
Я предполагаю, что завершение кода Android Studio использует отражение для изучения класса и определения доступных методов.
Почему Android Studio не удаляет эти методы, которые на самом деле недоступны для этих подклассов?
Возможно, отражение видит эти методы как доступные (поскольку отражение знает, что этот подкласс является ‹родительским классом›, и предполагает, что они доступны), но было бы неплохо, если бы Android Studio проделала дополнительную работу, чтобы удалить их перед отображением.
Можно ли считать это ошибкой? Я думаю, что Visual Studio лучше справляется с этим с IntelliSense.
.setOn setOn
...). Но я уверяю вас, что у Spinners могут быть слушатели с длинным кликом. - person Stephen   schedule 28.09.2017setOnLongClickListener
, так что это меня сбило с толку. Я также вижу, что вы правы в том, что Spinner не позволяет использоватьOnItemLongClickListener
и выдает исключение, если вы попытаетесь. - person Stephen   schedule 28.09.2017