Getid method in android

Android: ImageView getID (); Возвращаемое целое число

Я установил класс onTouch, чтобы определить, когда нажата одна из моих 40 кнопок.

Проблема, с которой я сталкиваюсь, – это определить, какая кнопка была нажата.

Если я использую:

Когда я нажимаю кнопку «widgetA1»,

Я получаю следующий ID:

Я бы хотел, чтобы он возвращал идентификатор строки «widgetA1»

Я другой мудрый прекрасно работает, он знает, какую кнопку вы нажимаете. Я совершенно новый для этого Android JAVA. Дайте мне знать, если вы, ребята, можете мне помочь.

Вы не можете получить эту строку widgetA1 … Вы всегда получите целое число. Но это целое уникально для этого элемента управления.

Поэтому вы можете сделать это, чтобы проверить, какая кнопка нажата

Изменить – TL; DR:

Я знаю, что прошло некоторое время с тех пор, как вы отправили сообщение, но я столкнулся с подобной проблемой, и я думаю, что нашел решение, посмотрев исходный код Android для класса View .

Я заметил, что когда вы печатаете представление (неявно вызывающий toString ()), напечатанные данные включают строку ID, используемую в файлах макета (тот, который вы хотите), вместо целого, возвращаемого getId (). Поэтому я посмотрел исходный код для представления toString (), чтобы увидеть, как Android получает эту информацию, и на самом деле это не слишком сложно. Попробуй это:

В исходном коде Android также использует getResourcePackageName(id) и getResourceTypeName(id) для создания полной строки:

Это приводит к чему-то влиянию android:id/widgetA1 .

Надеюсь, это поможет!

Конечно, вы можете получить widgetA1 , просто выполните:

Он должен предоставить вам your.package.name:id/widgetA1 , а затем сделать то, что вы хотите, с этой строкой.

Мы получим значение Integer, соответствующее идентификатору views. Для определения того, на какую кнопку вы нажимаете, лучше использовать теги. Вы можете установить тег в XML-файл макета и можете сравнить, какой элемент вы нажали с помощью.

Читайте также:  Российский офис для андроид

Это пример использования.

Я думаю, что вы можете использовать эту попытку

Для реализации вы можете использовать атрибут подсказки для хранения имени кнопки, которое доступно. Например, в коде кнопки (.xml-файл) используйте следующую строку:

Затем в функции onClicked (.java-файл) напишите следующее, чтобы получить подсказку:

Источник

Оцените статью