Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.59/17: Рейтинг темы: голосов - 17, средняя оценка - 4.59
train-13
0 / 0 / 0
Регистрация: 09.01.2014
Сообщений: 18
#1

Динамическое создание кнопок в цикле (Android)

16.01.2014, 00:53. Просмотров 3130. Ответов 8
Метки нет (Все метки)

создаю кнопки по циклу
Java
1
2
3
4
5
6
7
8
9
10
11
    void show(){
        public LinearLayout show;
        setContentView(R.layout.show_test);
        show = (LinearLayout) findViewById(R.id.show);
        for (int u=0; u<10; u++){
            ArrayList<Button> buttons = new ArrayList<Button>();
            buttons.add(new Button(this));
            buttons.get(u).setText(u);
            show.addView(buttons.get(u));
        }
    }
вылетает с ошибкой
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.01.2014, 00:53
Ответы с готовыми решениями:

Динамическое создание кнопок на Mono Android
Доброго времени суток. Разработку под Андроид начал изучать совсем недавно....

Динамическое создание кнопок и их кривая отрисовка
Всем доброго времени суток. Имеется такая процедура(хотя в данном случае...

Подключение нескольких кнопок в Android Studio
Помогите с подключение n-ого количества кнопок к n-ому количеству activity . На...

Создание кнопок
У меня в программе выпадает число рандомно от 1 до 10. Как мне автоматически...

Создаю новый проект и не могу добавить ничего ни кнопок ни текста, а hello world даже нет в Android Studio
Таким образом не могу ничего добавить, не отображается. При создании снова...

8
_Den_
160 / 156 / 29
Регистрация: 21.09.2013
Сообщений: 487
Записей в блоге: 2
16.01.2014, 01:28 #2
Цитата Сообщение от train-13 Посмотреть сообщение
вылетает с ошибкой
Какой ошибкой?

Добавлено через 13 минут
Кажется проблема в том, что нет привязки к XML-файлу каждой кнопки, хотя я не знаю точно
0
Divizal
38 / 38 / 10
Регистрация: 04.02.2013
Сообщений: 106
16.01.2014, 05:29 #3
Код ошибки не помешал бы, да.
Вы в качестве layout ставите show_test, при этом кнопки добавляете на show. Так и должно быть?
0
train-13
0 / 0 / 0
Регистрация: 09.01.2014
Сообщений: 18
16.01.2014, 10:31  [ТС] #4
Divizal, _Den_, код ошибки не могу дать. исполняю на устройстве. когда по одной добавляю все хорошо.
0
Divizal
38 / 38 / 10
Регистрация: 04.02.2013
Сообщений: 106
17.01.2014, 14:16 #5
train-13, тогда с чего такая уверенность что именно в этом участке кода ошибка? Я не вижу в данно коде ошибки, сходу так. Может у вас дальше там ошибка.

Собственно, может подключить устройство к ПК и запустить программу в IDE? Чтобы было видно какой код ошибки.
0
train-13
0 / 0 / 0
Регистрация: 09.01.2014
Сообщений: 18
17.01.2014, 23:37  [ТС] #6
Divizal,_Den_, потому что когда создаю кнопки вручную все работает
Java
1
2
3
4
5
6
7
8
    void show(){
        LinearLayout show;
        setContentView(R.layout.show_test);
        show = (LinearLayout) findViewById(R.id.show);
        btn= new Button(this);
        btn.setText("1");
        show.addView(btn);
}
а когда по циклу
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    void show(){
        LinearLayout show;
        setContentView(R.layout.show_test);
        show = (LinearLayout) findViewById(R.id.show);
        btn= new Button(this);
        btn.setText("1");
        show.addView(btn);
        for (int u=0; u<10; u++){
            ArrayList<Button> buttons = new ArrayList<Button>();
            buttons.add(new Button(this));
            buttons.get(u).setText(u);
            show.addView(buttons.get(u));
        }
 
    }
то нет.
а ошибка могу предположить вот:
Кликните здесь для просмотра всего текста
01-17 22:32:09.296 8966-8966/com.androidituts.udp W/ResourceType﹕ No package identifier when getting value for resource number 0x00000000
01-17 22:32:09.296 8966-8966/com.androidituts.udp D/AndroidRuntime﹕ Shutting down VM
01-17 22:32:09.296 8966-8966/com.androidituts.udp W/dalvikvm﹕ threadid=1: thread exiting with uncaught exception (group=0x400205a0)
01-17 22:32:09.306 8966-8966/com.androidituts.udp E/AndroidRuntime﹕ FATAL EXCEPTION: main
android.content.res.Resources$NotFoundException: String resource ID #0x0
at android.content.res.Resources.getText(Resources.java:210)
at android.widget.TextView.setText(TextView.java:2951)
at com.androidituts.udp.MyActivity.show(MyActivity.java:134)
at com.androidituts.udp.MyActivity$2.onClick(MyActivity.java:93)
at android.view.View.performClick(View.java:2532)
at android.view.View$PerformClick.run(View.java:9293)
at android.os.Handler.handleCallback(Handler.java:587)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:150)
at android.app.ActivityThread.main(ActivityThread.java:4277)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
at dalvik.system.NativeStart.main(Native Method)
0
Миниатюры
Динамическое создание кнопок в цикле (Android)   Динамическое создание кнопок в цикле (Android)  
RinatV
117 / 109 / 16
Регистрация: 15.05.2012
Сообщений: 320
Записей в блоге: 10
18.01.2014, 13:22 #7
должно быть

Java
1
2
ArrayList<Button> buttons = new ArrayList<Button>();
for (int u=0; u<10; u++){
иначе buttons.get(u) выдаст ошибку выхода за границу

Цитата Сообщение от train-13 Посмотреть сообщение
buttons.get(u).setText(u);
Цитата Сообщение от train-13 Посмотреть сообщение
android.content.res.Resources$NotFoundException: String resource ID #0x0
замените buttons.get(u).setText(u); на buttons.get(u).setText(String.valueOf(u)); иначе вызывается .setText(u) с использованием идентификатора ресурса
1
train-13
0 / 0 / 0
Регистрация: 09.01.2014
Сообщений: 18
18.01.2014, 22:17  [ТС] #8
RinatV, спасибо помогло +
0
pepsipepsi
0 / 0 / 0
Регистрация: 21.01.2015
Сообщений: 1
21.01.2015, 14:37 #9
а как присваивать обработчики на эти кнопки?
0
21.01.2015, 14:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2015, 14:37

Динамическое создание объекта
Всем привет! Заранее извиняюсь за глупый вопрос. Подскажите, пожалуйста, кто...

Динамическое создание интерфейса
Уважаемые форумчане, не подскажите как можно реализовать создание интерфейса в...

Динамическое создание кнопки
Добрый день, подскажите пожалуйста как программно можно создать кнопку или...


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

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

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