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

Программное изменение размеров Button - Android

Войти
Регистрация
Восстановить пароль
 
valerik
2 / 2 / 0
Регистрация: 10.11.2014
Сообщений: 14
10.11.2014, 16:27     Программное изменение размеров Button #1
Добрый день!
Начал изучать программирование на андроид. Решил написать простенькую игру.

Нужно программным способом разместить на экране кнопки определённого размера, что бы в ширину экрана влезло 9 кнопок. У меня получается следующая картина (см. скриншот):

кнопки ставятся произвольного размера и этот размер я не могу поменять из программы.

Вот код
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
    private TableLayout mTL;
    private TableRow mTR;
    private Button mB;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.game_screen);
        mTL = (TableLayout) findViewById(R.id.container);
        addNumbers();
    }
 
    protected void addNumbers() {
      
        for (int y = 0; y <= 2; y++) {
            mTR = new TableRow(this);
            mTL.addView(mTR, y);
 
            for (int x = 0; x <= 8; x++) {
                mB = new Button(this);
                mTR.addView(mB, x);
                mB.setText(String.valueOf(x) + ":" + String.valueOf(y));
                mB.setId(x + ':' + y);
                mB.setMaxWidth(20);  //Вот эта строка эффекта не даёт ни какого
            }
        }
    }
Вопрос: как задать необходимую ширину кнопки в процентах от ширины экрана?
Миниатюры
Программное изменение размеров Button  
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.11.2014, 16:27     Программное изменение размеров Button
Посмотрите здесь:

Программное изменение цвета текста button Android
Программное изменение размеров ImageView Android
Android Программное добавление View
Программное создание интерфейса Android
Android Программное создание обработчика события OnClick для button
Программное добавление View Android
Программное создание экрана Android
Android Программное изменение регистра клавиатуры
Программное изменение src в ImageView Android
Android Программное масштабирование
Android Как в Android положить один объект (button) на другой (button)?
Android Программное добавление View

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
YuraAAA
 Аватар для YuraAAA
1563 / 1305 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
10.11.2014, 16:29     Программное изменение размеров Button #2
valerik, да запихните их в linearLayout и поставьте всем вес 1.
valerik
2 / 2 / 0
Регистрация: 10.11.2014
Сообщений: 14
10.11.2014, 16:32  [ТС]     Программное изменение размеров Button #3
YuraAAA, Мне нужно сделать таблицей, что бы в каждой строке было по 9 кнопок, а строк будет много и они будут динамически добавляться
Sony17
28 / 28 / 6
Регистрация: 24.05.2013
Сообщений: 157
10.11.2014, 23:01     Программное изменение размеров Button #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от valerik Посмотреть сообщение
в каждой строке было по 9 кнопок, а строк будет много и они будут динамически добавляться
Ну вот эти 9 кнопок и добавить на LinearLayout и каждой кнопке ставить одинаковый вес. И каждая новая строка с кнопками будет новой LinearLayout.
Вот только 9 кнопок в одном ряду, с текстом типа n:n, в портретной ориентации будут очень маленькими и неудобными.
valerik
2 / 2 / 0
Регистрация: 10.11.2014
Сообщений: 14
11.11.2014, 16:36  [ТС]     Программное изменение размеров Button #5
Sony17, всё допёр теперь! Просто не знал, что layout вкладывать друг в друга можно. Вопрос разрешился!
valerik
2 / 2 / 0
Регистрация: 10.11.2014
Сообщений: 14
24.11.2014, 20:12  [ТС]     Программное изменение размеров Button #6
Запилил свою первую игру на андроид! Зацените
https://play.google.com/store/apps/d....myapplication
Собственно её и писал, когда создавал эту тему
Yandex
Объявления
24.11.2014, 20:12     Программное изменение размеров Button
Ответ Создать тему
Опции темы

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