Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
ILNAR_93
Android
222 / 222 / 23
Регистрация: 19.01.2013
Сообщений: 1,728
Записей в блоге: 3
#1

Как пройтись циклом по всем Buttons Лаяута - Программирование Android

17.08.2015, 13:26. Просмотров 270. Ответов 7
Метки нет (Все метки)

Как пройтись циклом по всем кнопкам в данном лаяуте? т.е. надо считывать у всех кнопок параметр Text у всех кнопок..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.08.2015, 13:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как пройтись циклом по всем Buttons Лаяута (Программирование Android):

Пройтись по всем editText в цикле - Программирование Android
Как пройтись по всем editText в цикле?

Верхняя часть лаяута уходит за пределы экрана - Программирование Android
если клавиатура открыта то верхняя часть лаяута уходит вверх за пределы экрана.. (Action bar соответственно тоже) Что это может...

Убрать панель с названием приложения при редактировании лаяута - Программирование Android
Подскажите как можно избавится от bar-а где написано название приложения именно при редактировании лаяута. Так как если использовать...

Как пройтись по всем веткам TreeView циклом? - C#
Цикл проходит только по узлам, а до конечных веток не доходит. Подскажите, пожалуйста, как сделать чтобы цикл доходил до веток? Код: ...

Пройтись циклом for по всем символам в текстовом файле - C++
Как в С++ открыть файл и пройтись циклом for по всем символам в текстовом файле. Это нужно для выполнения заданий: 14. Выписать из...

Не могу пройтись циклом по всем парам одинаковых строк в Memo - Delphi
Здравствуйте.Нужно пройтись циклом по парам одинаковых строк в Memo и удалить неодинаковые. Здесь ищу одинаковые подстроки. function...

7
Mikalai
259 / 235 / 95
Регистрация: 11.01.2015
Сообщений: 662
17.08.2015, 14:12 #2
Создай массив Button[]. Заполни его своими кнопками и используй в цикле. Или ты думаешь, что существует магический метод решающий конкретно твою задачу? ))
0
Pablito
2496 / 1980 / 618
Регистрация: 12.05.2014
Сообщений: 6,923
Завершенные тесты: 1
17.08.2015, 14:27 #3
кнопки создаются программно или в xml идут готовые?
0
Spelcrawler
527 / 497 / 111
Регистрация: 12.03.2014
Сообщений: 1,649
Завершенные тесты: 1
17.08.2015, 15:11 #4
Цитата Сообщение от Mikalai Посмотреть сообщение
Или ты думаешь, что существует магический метод решающий конкретно твою задачу? ))
Существует)

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
    private ViewGroup mMainView;
    private List<TextView> mTextViews;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mMainView = (ViewGroup) View.inflate(this, R.layout.activity_settings, null);
        setContentView(mMainView);
        List<String> texts = getAllText();
    }
 
    private List<String> getAllText(){
        mTextViews = new ArrayList<>();
        findAllTextViews(mMainView);
        List<String> texts = new ArrayList<>();
        for(TextView textView : mTextViews){
            texts.add(String.valueOf(textView.getText()));
        }
        
        return texts;
    }
 
    private void findAllTextViews(ViewGroup viewGroup) {
        int count = viewGroup.getChildCount();
        for (int i = 0; i < count; i++) {
            View view = viewGroup.getChildAt(i);
            if (view instanceof ViewGroup)
                findAllTextViews((ViewGroup) view);
            else if (view instanceof TextView) {
                mTextViews.add((TextView) view);
            }
        }
    }
1
ILNAR_93
Android
222 / 222 / 23
Регистрация: 19.01.2013
Сообщений: 1,728
Записей в блоге: 3
17.08.2015, 16:55  [ТС] #5
Паблито, динамически (ПРОГРАММНО)

Добавлено через 1 час 32 минуты
Spelcrawler, Это получается для статических кнопок?

а для динамически добавляемых?

я пробую ViewGroup достать так:
Java
1
mMainView = (ViewGroup) act.getParent();
но ругается типо неконвертируемый тип бла бла..
0
Spelcrawler
527 / 497 / 111
Регистрация: 12.03.2014
Сообщений: 1,649
Завершенные тесты: 1
17.08.2015, 17:00 #6
Цитата Сообщение от ILNAR_93 Посмотреть сообщение
Это получается для статических кнопок?
Для любых.
Цитата Сообщение от ILNAR_93 Посмотреть сообщение
я пробую ViewGroup достать так:
Доставайте, как я написал. По другому не выйдет.
1
Pablito
2496 / 1980 / 618
Регистрация: 12.05.2014
Сообщений: 6,923
Завершенные тесты: 1
17.08.2015, 17:02 #7
можно при создании кнопок задавать им setTag()
а потом в цикле отбирать не по instanceof, а по тегу, только с проверкой тега на null
1
Spelcrawler
527 / 497 / 111
Регистрация: 12.03.2014
Сообщений: 1,649
Завершенные тесты: 1
17.08.2015, 17:34 #8
Цитата Сообщение от Паблито Посмотреть сообщение
можно при создании кнопок задавать им setTag()
Тогда уж проще их сразу в массив складывать) Этот способ как раз для самых ленивых, ничего дополнительного делать не нужно и найдет все кнопки.
1
17.08.2015, 17:34
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.08.2015, 17:34
Привет! Вот еще темы с ответами:

Как пройтись циклом по названиям объектов - C#
К примеру есть код: List&lt;string&gt; spec1 = new List&lt;string&gt;(); List&lt;string&gt; spec2 = new List&lt;string&gt;(); List&lt;string&gt; spec3 = new...

Как пройтись по всем tooltip? - C#
Добрый день, уже который час бьюсь над задачей. Мне нужно пройтись по всем tooltip и получить их Control, для реализации мультиязычности...

Как пройтись по всем переменным? - C++
у меня есть переменные x1,x2,x3,.....,xn. есть какой нибудь способ пройтись по ним всем и каждой присвоить значение или прочесть ее. массив...

Как пройтись по всем котролам? - C# WPF
Здравствуйте! Подскажите пожалуйста как пройтись по всем котролам, которые располагаются на панели Grid, в строке 1 (Grid.Row=&quot;1&quot;) и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru