|
|
|
пройти (некоторые) элементы 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&fpage=12&tid=1331123]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
47ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 12ms |
| total: | 152ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...