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

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

Войти
Регистрация
Восстановить пароль
 
bt1024
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 31
#1

Размер кнопок, не пойму что влияет на их размер - Программирование Android

21.10.2014, 18:12. Просмотров 815. Ответов 4
Метки нет (Все метки)

Нужно специфичное расположение кнопок, добиваюсь этого вложением множества вертикальных и горизонтальных Layout-ов. В главный (Hor) добавляю вертикальный в него горизонтальный, сюда добавляю кнопку и вертикальный лайаут в который добавляю пару рядов кнопок (каждый ряд в горизонтальном лайауте). Так сложно (а может это обычно не знаю) повторюсь из за специфичных требований к размещению кнопок, рядом с тем или иным лайаутом может быть ещё кнопка и т.д. Все делается программно, xml не используется, всё динамично.
Проблема в том что ряды кнопок не помещаются на экране, а что определяет размер кнопок не мне ясно.

Кнопка это обычная toggleButton с подставляемыми изображениями в разных состояниях
Что сделать что бы ряды кнопок стали вмещаться в лайаут, btn.setHeight(val) и setWidth(..) не работают

Я уже морально готов получить размер экрана в пикселях и сам задавать размеры всех эллементов, но может есть способы так не поступать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.10.2014, 18:12     Размер кнопок, не пойму что влияет на их размер
Посмотрите здесь:
Android Как подгонять размер диалоговых окон по размер экрана?
Android Размер шрифта, размер контролов
Сделать так что бы размер кнопки неизменяемым, какой бы там текст не был Android
Android Размер шрифта
Размер приложения Android
Размер текста Android
Размер значков в ActionBar Android
Android Размер шрифта, TextView
Динамический размер ImageView Android
Размер шрифта Tabhost Android
Android Размер картинки в webview
Android Физический размер экрана

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Netscape
371 / 358 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
21.10.2014, 18:44     Размер кнопок, не пойму что влияет на их размер #2
Размеры можно задать через LayoutParams.
bt1024
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 31
21.10.2014, 20:01  [ТС]     Размер кнопок, не пойму что влияет на их размер #3
В LayoutParam можно задать размеры layout, а мне надо размеры кнопок задать, что бы 10 штук вряд масшабировались на экран, а не что-то решает что размер кнопки 160 пк(например) и 10 кнопок в длину больше чем экран. А лучше всего что бы кнопки сами масштабировались под размеры layout-а, WRAP_CONTENT или MATCH_CONTENT не помогают

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
34
35
36
37
Вот допустим создадим вертикальный слой
Lay1Ver  = new LinearLayout(this);
Lay1Ver.setOrientation(LinearLayout.VERTICAL);
 
также настройки слоя
LayParam = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
Lay1Ver.setLayoutParams(LayParam);
 
Таких слоев несколько, часть горизонтальные, другие вертикальные
 
Есть горизонтальный MainLayout 
 
        MainLayout = new LinearLayout(this);
        MainLayout.setOrientation(LinearLayout.HORIZONTAL);
        linHorGeneralParam = new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
        MainLayout.setPadding(5, 10, 5, 10);
        setContentView(MainLayout, linHorGeneralParam); 
 
Добавим в слой LayHRow1 кнопки
        for(int i = 0; i < 12; i++){
            LayHRow1.addView(ButtonsArray.get(i));
        }
 
Компонуем
        Lay3Ver.addView(LayHRow1);
        Lay3Ver.addView(LayHRow2);
        Lay3Ver.addView(LayHRow3);
 
        Lay2Hor.addView(ButtonsArray.get(item_number));
        Lay2Hor.addView(Lay3Ver);
        Lay1Ver.addView(Lay2Hor);
        
        MainLayout.addView(Lay1Ver);
 
Все кнопки создаются так
        ToggleButton tb = new ToggleButton(this);
и добавляются в буфер откуда используются. Естественно там они настраиваются, есть обработчик и т.д., не суть
А суть в том что кнопки в ряде LayHRow1 оказываются слишком длинные, что влияет на их размер?
bt1024
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 31
22.10.2014, 22:55  [ТС]     Размер кнопок, не пойму что влияет на их размер #4
Ну хоть намекните куда смотреть, как сказать андроиду уменьшить размер кнопок и вместить их в экран.

Добавлено через 2 часа 15 минут
Вижу никто мне не подскажет
Кроме вот такого варианта, ещё существуют средства заставить андроид впихнуть все что сказано в видимый размер?
Java
1
2
3
for(int i = 0; i < 12; i++){
            LayHRow1.addView(ButtonsArray.get(i), width, height);
        }
bt1024
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 31
24.10.2014, 00:21  [ТС]     Размер кнопок, не пойму что влияет на их размер #5
Таки разрулил все через размер экрана и по прапорции устанавливал размеры. По пути наткнулся на баг, когда все layout-ы динамические, а сами объекты статические (всегда одни и теже) то будет ошибка из-за того что объект "прицепился" к layout-у и считает его своим parent и его надо отцепить, у меня в нагромождении объектов это как то было неочевидно Короче или всё динамическое или всё статическое, так проще жить.
Yandex
Объявления
24.10.2014, 00:21     Размер кнопок, не пойму что влияет на их размер
Ответ Создать тему
Опции темы

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