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

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

Войти
Регистрация
Восстановить пароль
 
proggamer12
17 / 17 / 2
Регистрация: 06.07.2012
Сообщений: 499
Завершенные тесты: 1
#1

Максимально увеличить один элемент в Gridlayout и сжать до минимума остальные - Android

19.07.2016, 15:18. Просмотров 131. Ответов 4
Метки нет (Все метки)

Здравствуйте!
Имеется тестовая разметка:
XML
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
                                      xmlns:app="http://schemas.android.com/apk/res-auto"
                                      android:layout_width="match_parent"
                                      android:layout_height="match_parent"
                                      app:rowCount="4"
                                      app:columncount="4">
 
    <Button
        android:text="1"
        android:id="@+id/button1"
        app:layout_gravity="fill"
        app:layout_rowWeight="1"
        app:layout_columnWeight="1"
        app:layout_row="0"
        app:layout_column="0""/>
 
 
    <Button
        android:text="2"
        android:id="@+id/button2"
        app:layout_rowWeight="1"
        app:layout_columnWeight="1"
        app:layout_gravity="fill"
        app:layout_row="0"
        app:layout_column="1"/>
 
    <Button
        android:text="3"
        android:id="@+id/button3"
        app:layout_rowWeight="1"
        app:layout_columnWeight="1"
        app:layout_gravity="fill"
        app:layout_row="0"
        app:layout_column="2"/>
 
    <Button
        android:text="4"
        android:id="@+id/button5"
        
        app:layout_gravity="fill"
        app:layout_row="1"
        app:layout_column="0"/>
 
    <Button
        android:text="5"
        android:id="@+id/button6"
        app:layout_rowWeight="1"
        app:layout_columnWeight="1"
        app:layout_gravity="fill"
        app:layout_row="1"
        app:layout_column="1"/>
 
    <Button
        android:text="6"
        android:id="@+id/button7"
        app:layout_rowWeight="1"
        app:layout_columnWeight="1"
        app:layout_gravity="fill"
        app:layout_row="1"
        app:layout_column="2"/>
    <Button
        android:text="7"
        android:id="@+id/button8"
        app:layout_rowWeight="1"
        app:layout_columnWeight="1"
        app:layout_gravity="fill"
        app:layout_row="2"
        app:layout_column="0"/>
    <Button
        android:text="8"
        android:id="@+id/button9"
        app:layout_rowWeight="1"
        app:layout_columnWeight="1"
        app:layout_gravity="fill"
        app:layout_row="2"
        app:layout_column="1"/>
 
    <Button
        android:text="9"
        android:id="@+id/button4"
        app:layout_gravity="fill"
        app:layout_rowWeight="1"
        app:layout_columnWeight="1"
        app:layout_row="2"
        app:layout_column="2"
        />
 
</android.support.v7.widget.GridLayout>
(картинка 1)
Хотелось бы добиться того, чтобы кнопка 1 максимально возможно растянулась по высоте, а кнопки 4 и 7 сжались до состояния wrap_content (как на картинке 2, сделал в фоторедакторе).
Не подскажете: как нужно изменить текущую разметку для этого?
Миниатюры
Максимально увеличить один элемент в Gridlayout и сжать до минимума остальные   Максимально увеличить один элемент в Gridlayout и сжать до минимума остальные  
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.07.2016, 15:18     Максимально увеличить один элемент в Gridlayout и сжать до минимума остальные
Посмотрите здесь:

Android Поворот отдельной страницы в приложении, когда все остальные этого не делают
Android Программное создание GridLayout и добавление в него объектов
Обращение к View-элементу в GridLayout Android
Android GridLayout и layout_width="fill_parent" его компонента
GridLayout, ширина колонки Android
Canvas поверх GridLayout Android
Как узнать максимально возможный зум Google Maps? Android
Android Программное наполнение GridLayout
Android Разделить GridLayout на равные части
Android Равномерное заполнение колонками пространства с помощью GridLayout
Удалить один элемент в таблице БД Android
Unknown member align_normal of android.widget.gridlayout.alignment Android

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Паблито
резкий
1964 / 1699 / 526
Регистрация: 12.05.2014
Сообщений: 6,054
Завершенные тесты: 1
19.07.2016, 15:49     Максимально увеличить один элемент в Gridlayout и сжать до минимума остальные #2
app:columncount="4"
- тут ошибка columnСount
- непонятно почему кол-во строк/колонок указано по 4, а не по 3

но все это не важно, проще сделать на двух LinearLayout и не мучаться
proggamer12
17 / 17 / 2
Регистрация: 06.07.2012
Сообщений: 499
Завершенные тесты: 1
19.07.2016, 15:58  [ТС]     Максимально увеличить один элемент в Gridlayout и сжать до минимума остальные #3
Ясно, спасибо!

Добавлено через 4 минуты
На двух LinearLayout - вы имеете ввиду поместить 1 4 7 в linearlayout и для 1 казать fill_parent?
Паблито
резкий
1964 / 1699 / 526
Регистрация: 12.05.2014
Сообщений: 6,054
Завершенные тесты: 1
19.07.2016, 16:06     Максимально увеличить один элемент в Gridlayout и сжать до минимума остальные #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
XML
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
        <?xml version="1.0" encoding="utf-8"?>
        <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:app="http://schemas.android.com/apk/res-auto"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="horizontal">
 
            <LinearLayout
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:orientation="vertical">
 
                <Button
                    android:id="@+id/button1"
                    android:layout_width="match_parent"
                    android:layout_height="0dp"
                    android:layout_weight="1"
                    android:text="1" />
 
                <Button
                    android:id="@+id/button4"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:text="4"
                    app:layout_columnWeight="1"
                    app:layout_rowWeight="1" />
 
                <Button
                    android:id="@+id/button7"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:text="7"
                    app:layout_columnWeight="1"
                    app:layout_rowWeight="1" />
 
            </LinearLayout>
 
            <LinearLayout
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:orientation="vertical">
 
                <Button
                    android:id="@+id/button2"
                    android:layout_width="match_parent"
                    android:layout_height="0dp"
                    android:layout_weight="1"
                    android:text="2" />
 
                <Button
                    android:id="@+id/button5"
                    android:layout_width="match_parent"
                    android:layout_height="0dp"
                    android:layout_weight="1"
                    android:text="5" />
 
                <Button
                    android:id="@+id/button8"
                    android:layout_width="match_parent"
                    android:layout_height="0dp"
                    android:layout_weight="1"
                    android:text="8" />
 
            </LinearLayout>
 
            <LinearLayout
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:orientation="vertical">
 
                <Button
                    android:id="@+id/button3"
                    android:layout_width="match_parent"
                    android:layout_height="0dp"
                    android:layout_weight="1"
                    android:text="3" />
 
                <Button
                    android:id="@+id/button6"
                    android:layout_width="match_parent"
                    android:layout_height="0dp"
                    android:layout_weight="1"
                    android:text="6" />
 
                <Button
                    android:id="@+id/button9"
                    android:layout_width="match_parent"
                    android:layout_height="0dp"
                    android:layout_weight="1"
                    android:text="9" />
 
            </LinearLayout>
        </LinearLayout>
proggamer12
17 / 17 / 2
Регистрация: 06.07.2012
Сообщений: 499
Завершенные тесты: 1
19.07.2016, 16:08  [ТС]     Максимально увеличить один элемент в Gridlayout и сжать до минимума остальные #5
Ясно
Yandex
Объявления
19.07.2016, 16:08     Максимально увеличить один элемент в Gridlayout и сжать до минимума остальные
Ответ Создать тему
Опции темы

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