|
пройти (некоторые) элементы Layout по циклу
|
|||
---|---|---|---|
#18+
Привет, в программировании под Андроид опыта почти нет. У меня в activity есть довольно много "залипающих" кнопок, ToggleButton (64 одинаковых, это для управления внешним устройством по ethernet). В OnCreate хочу "подвесить" всем этим кнопкам однотипный обработчик OnCheckedChangeListener. Если делать это для одной кнопки, то делал это вот так: Код: java 1. 2.
Думаю сделать это в цикле для всех 64 кнопок. Названия у них: toggleButton1, ... toggleButton64. Но в findViewById передается id, а не название. Как думаете, как бы мне решить свою задачу? Есть способ по имени найти id View: Resources.getIdentifier, но пишут, что это не очень эффективно: Note: use of this function is discouraged. It is much more efficient to retrieve resources by identifier than by name. Может быть есть способ обойти дочерние элементы Layout в цикле? Или вообще подойти к проблеме с другой стороны. Может кто-нибудь подсказать что-нибудь? ) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 17:09 |
|
пройти (некоторые) элементы Layout по циклу
|
|||
---|---|---|---|
#18+
s62Может кто-нибудь подсказать что-нибудь? ) https://github.com/excilys/androidannotations/wiki/ViewChangeEvents#checkedchange :) Код: java 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 17:29 |
|
пройти (некоторые) элементы Layout по циклу
|
|||
---|---|---|---|
#18+
wadman, спасибо, чуть глянул, потом посмотрю подробнее библиотеку. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 18:17 |
|
пройти (некоторые) элементы Layout по циклу
|
|||
---|---|---|---|
#18+
s62Может быть есть способ обойти дочерние элементы Layout в цикле? Или вообще подойти к проблеме с другой стороны. Может кто-нибудь подсказать что-нибудь? ) Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2016, 12:29 |
|
пройти (некоторые) элементы Layout по циклу
|
|||
---|---|---|---|
#18+
Джибс, спасибо, я примерно так и сделал сегодня, через getChildAt, но более примитивно - без рекурсии, использовав то, что знаю конкретную структуру UI. Ваш способ универсальнее, сейчас попробую переписать. А вот пишут, что instanceof - медленный и можно использовать сравнение классов, я писал: Код: java 1. 2.
Можете прокомментировать этот момент? (Хотя, кажется, что несколько десятков использований этого оператора скорее всего не должны реально давать заметного эффекта) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2016, 17:09 |
|
пройти (некоторые) элементы Layout по циклу
|
|||
---|---|---|---|
#18+
s62А вот пишут, что instanceof - медленный и можно использовать сравнение классов Можно, если есть уверенность, что не попадутся наследники класса. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2016, 17:20 |
|
|
start [/forum/topic.php?fid=13&msg=39221536&tid=1331123]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
others: | 254ms |
total: | 396ms |
0 / 0 |