Android получить название текущей активности для полиморфного метода - PullRequest
4 голосов
/ 15 апреля 2011

У меня есть дилемма, в основном у меня есть кнопки ImageButton, которые я хочу отображать на всех действиях (это сделано), и я также хочу, чтобы они отображались на всех действиях определенным образом, в зависимости от того, какое действие отображается. Я хочу, чтобы это было сделано так, чтобы мне не приходилось жестко кодировать спецификации отдельно для каждого класса.

Хотя изображения определены в одном общем XML-документе, я хочу, чтобы общий класс мог прочитать, какая операция вызывается, а затем отформатировать определенное изображение определенным образом. Это так, если я изменяю функциональность, мне нужно изменить только атрибуты в одном классе.

Я хочу сделать какой-то оператор If или switch, который сравнивает if (thisActivity == MainActivity) тогда, но я не знаю, как извлечь «имена» действий, чтобы сравнить их!

редактировать. Я хочу что-то вроде этого:

   Context myContext = this;

    if(myContext instanceof Intent(MainMenu.class) == true)
    {

    }

Я знаю, что функция Intent не имеет прототипа для проверки подобного класса, но я хочу что-то, что позволило бы мне знать, что текущий класс является частью определенного класса, в отличие от нескольких других случаев в условном выражении

спасибо за понимание!

1 Ответ

18 голосов
/ 15 апреля 2011

Подойдет ли оператор instanceof к вашим потребностям?

if(this instanceof Activity1) {
//...
}
else if(this instanceof Activity2) {
//...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...