хотя метод существует, но я все еще получаю сообщение об ошибке: «Не удалось найти метод methodName (View) в контексте родителя или предка» - PullRequest
0 голосов
/ 15 апреля 2020

В SO много подобных вопросов по этому поводу, но во всех из них ошибка из-за опечатки, типа / числа аргументов метода, или метод находится в неправильном месте, что не применимо для моего проблема.

У меня есть ImageButton в моем xml, который повторяется в ListView, который находится в Fragment

Я добавил android:onClick="methodName" к нему.

и метод существует в активности фрагмента:

fun methodName(v: View)
{
    //some code
}

, и редактор подтверждает, что (в XML ошибка не отображается для onClick), и метод показывает, что на него есть ссылка , однако после запуска приложения я получаю сообщение об ошибке:

Не удалось найти метод methodName (View) в контексте родителя или предка для android: атрибут onClick, определенный для класса представления android .widget .ImageButton с идентификатором 'item_id'

Обновление : я пытался очистить и восстановить проект, но ничего не получилось. Перезапуск Android Studio также не сработал.

Я удалил свой метод, и в файле xml щелкнул по «create onClick event hasler», и он заново создал метод, но все еще получал ту же ошибку.

1 Ответ

0 голосов
/ 15 апреля 2020

Попробуйте это

1) Попробуйте переименовать ваш метод, не держите его слишком обобщенным c, как onClick ()

2) Если у вас есть аннотация @override, удалите его.

3) Попробуйте сделать метод publi c один раз.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...