2016-11-15 8 views
0

Я использую аннотации Android для моего проекта. Я пытаюсь добавить событие en на кнопки, созданные в коде.Андронаты Android - привязка события к элементу, созданному в коде

У меня есть несколько кнопок, и попытаться добавить событие Фокус Изменить на них, чтобы иметь что-то вроде этого:

@FocusChange(?) 
protected void buttonFocusChanged(View btn, boolean hasFocus) { 
//Some cool animation 
} 

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

Могу ли я использовать аннотации для этого, или я должен использовать «нормальный» метод, и сделать это для каждой кнопки:

beautifulButton.setOnFocusChangeListener(new View.OnFocusChangeListener() { 
    @Override 
    public void onFocusChange(View view, boolean b) { 
    //Some ugly animation 
    } 
}); 

Спасибо.

ответ

0

Конечно, вы можете использовать аннотированную вещь. Слушатель событий будет добавлен в onCreate() в случае Activity и в onViewCreated() в случае Fragment.

+0

Спасибо за ваш ответ. Однако, когда я помещаю вышеуказанный код, у меня есть ошибка, потому что обходной путь аннотаций Android. У меня нет идентификатора для динамически созданной кнопки, поэтому я не могу использовать метод @FocusChange (R.id.mybuttonID) или другой метод, в котором имя используется для поиска связанной кнопки ID (« «в образце кода»), та же проблема, кнопки не имеют идентификатора. – DerMth

+0

Если кнопки не имеют идентификатора, то вы не можете использовать аннотации. – WonderCsabo

+0

Большое спасибо WonderCsabo! – DerMth

 Смежные вопросы

  • Нет связанных вопросов^_^