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

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

Войти
Регистрация
Восстановить пароль
 
Cuda1
18 / 18 / 7
Регистрация: 08.10.2014
Сообщений: 98
#1

Разметка activity - Программирование Android

16.10.2014, 08:52. Просмотров 697. Ответов 9
Метки нет (Все метки)

Здравствуйте. У меня в активити присутствует webView, за ним - listView и внизу кнопки для навигации. Т.к. webView используется не всегда я ему выставил значение visibility=gone. Но вот беда - как только я меняю значение на visible кнопки для навигации у меня вообще опускаются вниз за пределы экрана. Я бы хотел чтобы "сжимался" listView, а кнопки оставались. Пробовал кнопки пихать в LinearLayout но проблема осталась. Подскажите, пожалуйста что можно сделать.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.10.2014, 08:52     Разметка activity
Посмотрите здесь:

Разметка - Программирование Android
Подскажите как сделать такую разметку на всех экранах? У меня основная сложность в том что я не могу синхронизировать размеры элементов....

Html разметка - Программирование Android
Можно ли при помощи Java как то создать html файл и заполнить его содержимое определенной html разметкой, которую затем можно запустить...

Разметка элементов - Программирование Android
На первый взгляд простейшая задача - нарисовать калькулятор в таком стиле: И первое, что приходит на ум - использовать GridLayout...

Разметка GridView - Программирование Android
Как можно сделать разметку GridView, чтобы одна верхняя ячейка была по всей ширине экрана, а остальные - ниже шли обычно таблицей??Как так...

Разметка XML - Программирование Android
Здравствуйте, сделал разметку, но она не эффективна на разных разрешениях экранов, т.к. я задавал ширину и высоту и расположение явно....

Разметка приложения - Программирование Android
На вложенном скриншоте разметка моего приложения. Нужно чтобы шесть кнопок были размером во весь экран на любом устройстве. Как правильно...

Разметка ListView не найдена - Программирование Android
Пытаюсь подключить свой адаптер и свою разметку. Делаю так: import android.os.Bundle; import android.support.v4.app.ListFragment; ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Pablito
2455 / 1900 / 591
Регистрация: 12.05.2014
Сообщений: 6,702
Завершенные тесты: 1
16.10.2014, 09:40     Разметка activity #2
GONE вообще убирает объект из разметки, как будто его и нет вообще
я не вникал в задание и лениво предствалять как оно там и куда сжимается, но вместо GONE надо бы пробовать INVISIBLE
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
16.10.2014, 09:56     Разметка activity #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Нужно listView и webView положить в один layout, а кнопки в другой. Выставить обоим layout_height = "match_parent" и layout_weight = "1". Возможно weight нужно будет изменить (в одном побольше в другом меньше), в редакторе посмотрите чтобы все ровно было.
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
16.10.2014, 12:08     Разметка activity #4
Цитата Сообщение от Паблито Посмотреть сообщение
но вместо GONE надо бы пробовать INVISIBLE
Мне кажется тут размеры webView останутся такими же.
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
16.10.2014, 12:18     Разметка activity #5
Rube, да точно останутся)
Cuda1
18 / 18 / 7
Регистрация: 08.10.2014
Сообщений: 98
16.10.2014, 12:24  [ТС]     Разметка activity #6
Spelcrawler, у меня все так как вы сказали, за исключением того, что layout_weight другой выставлен. Если я их сделаю равным 1 они же в вертикальную линию превратятся, разве нет?
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
16.10.2014, 12:31     Разметка activity #7
Вы путаете width и weight)
Cuda1
18 / 18 / 7
Регистрация: 08.10.2014
Сообщений: 98
16.10.2014, 20:53  [ТС]     Разметка activity #8
Spelcrawler, а, ну да) вечером попробую, отпишусь)

Добавлено через 7 часов 41 минуту
Spelcrawler, сделал как вы сказали, но все равно, если видимость поменять у webView, то он расширяется и кнопки уходят за экран. здесь вот моя разметка, посмотрите пожалуйста, если не сложно)
Кликните здесь для просмотра всего текста
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
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="match_parent"
    android:layout_weight = "1"
    android:orientation="vertical">
 
    <WebView
        android:layout_width="match_parent"
        android:layout_height="111dp"
        android:id="@+id/webView"
        android:layout_gravity="center_horizontal"
        android:visibility="gone" />
 
    <ListView
        android:layout_width="match_parent"
        android:layout_height="470dp"
 
        android:id="@+id/list"
        android:smoothScrollbar="true"
        android:visibility="visible" />
 
    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight = "1">
 
        <Button
            android:layout_width="192dp"
            android:layout_height="match_parent"
            android:id="@+id/button"
            android:focusable="false"
            android:focusableInTouchMode="false"
            android:background="@drawable/button_puls_non_pressed"
            android:text="Пульс"
            android:clickable="true"
            android:enabled="true"
            android:onClick="onClick1"
            android:gravity="bottom|center"
            android:drawableTop="@drawable/icon_puls" />
 
        <Button
            android:layout_width="192dp"
            android:layout_height="match_parent"
            android:id="@+id/button2"
            android:text="Расписание"
            android:clickable="true"
            android:background="@drawable/button_rasp_non_pressed"
            android:enabled="true"
            android:focusableInTouchMode="false"
            android:onClick="onClick"
            android:focusable="false"
            android:gravity="bottom|center"
            android:drawableTop="@drawable/icon_scheduler" />
    </LinearLayout>
</LinearLayout>
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
16.10.2014, 21:46     Разметка activity #9
Ну дак вебвью и листвью тоже нужно сделать match_parent и weight по ананалогии с лейаутами.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.10.2014, 22:27     Разметка activity
Еще ссылки по теме:

Разметка под Андроид - Программирование Android
Нужна помощь в верстке, пишите кто сможет помочь Дубль темы во Фрилансе, закрыто

Разметка для RadioGroup - Программирование Android
Делаю карточку вопрос-варианты ответа. Выглядит сейчас она так, как на прикреплённом скриншоте, без редактирования, как есть. Разметка...

Разметка и вывод списком - Программирование Android
Вот пытаюсь вывести на экран списком подобие расписания, но вот сама разметка подводит. Для вывода использую RecyclerView, и когда на...

Разметка (фон аккаунта) - Программирование Android
Как сделать черный прямоугольник на фона аккаунта как на скрине со &quot;Стивом Джобсом&quot;)?

ListFragment - своя разметка item - Программирование Android
А как свою разметку каждого item подсунуть в ListFragment? Вот как есть сейчас и работает: @Override public void...


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

Или воспользуйтесь поиском по форуму:
Cuda1
18 / 18 / 7
Регистрация: 08.10.2014
Сообщений: 98
16.10.2014, 22:27  [ТС]     Разметка activity #10
Spelcrawler, а мне match_parent не нужен. Надо чтобы часть экрана занимал только. Вообщем я выставил layout_weight = "1" у корневой LinearLayout, у webView и у ListView. И все прячется как нужно. Спасибо вам) простите не знаю как изображения под спойлер прятать)
Кликните здесь для просмотра всего текста
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
?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="match_parent"
    android:layout_weight = "1"
    android:orientation="vertical">
 
    <WebView
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:id="@+id/webView"
        android:layout_gravity="center_horizontal"
        android:layout_weight = "1"
        android:visibility="gone" />
 
    <ListView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight = "1"
        android:id="@+id/list"
        android:smoothScrollbar="true"
        android:visibility="visible" />
 
    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:divider="@drawable/separator"
        android:dividerPadding="3dp"
        android:showDividers="middle"
       >
 
        <Button
            android:layout_width="192dp"
            android:layout_height="match_parent"
            android:id="@+id/button"
            android:focusable="false"
            android:focusableInTouchMode="false"
            android:text="Пульс"
            android:clickable="true"
            android:enabled="true"
            android:onClick="onClick1"
 
            android:gravity="bottom|center"
            style="?android:attr/buttonBarButtonStyle" />
 
        <Button
            android:layout_width="192dp"
            android:layout_height="match_parent"
            android:id="@+id/button2"
 
            android:text="Расписание"
            android:clickable="true"
            android:enabled="true"
            android:focusableInTouchMode="false"
            android:onClick="onClick"
            android:focusable="false"
            android:gravity="bottom|center"
            style="?android:attr/buttonBarButtonStyle" />
    </LinearLayout>
</LinearLayout>
Миниатюры
Разметка activity   Разметка activity  
Yandex
Объявления
16.10.2014, 22:27     Разметка activity
Ответ Создать тему
Опции темы

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