Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
motoroller
2 / 2 / 1
Регистрация: 01.05.2012
Сообщений: 116
#1

Как сделать RelativeLayout поверх другого?

16.06.2015, 04:53. Просмотров 1319. Ответов 1
Метки нет (Все метки)

Есть основной фрагмент:

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
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
 
<com.google.android.gms.maps.MapView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/mapView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_above="@+id/company_details" />
 
 
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:padding="10dp"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:id="@+id/company_details"
        android:background="@color/details_company">
 
        <!-- Image -->
        <com.android.volley.toolbox.NetworkImageView
            android:id="@+id/company_image"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:layout_alignParentLeft="true" />
 
        <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_marginLeft="10dp">
 
            <!-- Title -->
            <TextView
                android:id="@+id/company_title"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_marginLeft="80dp" />
 
            <!-- Address -->
            <TextView
                android:id="@+id/company_address"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                style="@style/Country"
                android:layout_below="@id/company_title"
                android:layout_marginLeft="80dp" />
 
            <!-- Phone -->
            <TextView
                android:id="@+id/company_phone"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                style="@style/Country"
                android:textSize="30dp"
                android:layout_below="@id/company_address"
                android:layout_marginLeft="80dp" />
 
        </RelativeLayout>
 
    </RelativeLayout>
 
</RelativeLayout>
Он содержит два основных элемента
это карта и RelativeLayout. Последний элемент мы скрываем.
Так овт при перемещении карты или клику по элементу карты, мне надо чтобы RelativeLayout (company_details).
Собственно я этого добился:

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
// При перемещении карты
                                    googleMap.setOnCameraChangeListener(new GoogleMap.OnCameraChangeListener() {
                                        @Override
                                        public void onCameraChange(CameraPosition camera) {
                                            RelativeLayout Details = (RelativeLayout) rootView.findViewById(R.id.company_details);
 
                                            if(Details.getVisibility() == View.VISIBLE && showDetails == false) {
                                                TranslateAnimation slide = new TranslateAnimation(0, 0, 0, Details.getHeight());
                                                slide.setDuration(500);
                                                Details.setVisibility(View.GONE);
 
                                                Log.d("My prog", "hide");
                                            } else if(Details.getVisibility() == View.GONE && showDetails == true) {
                                                TranslateAnimation slide = new TranslateAnimation(0, 0, Details.getHeight(), 0);
                                                slide.setDuration(500);
                                                //slide.setFillAfter(true);
                                                Details.startAnimation(slide);
                                                Details.setVisibility(View.VISIBLE);
                                                Log.d("My prog", "show");
                                            } else if(Details.getVisibility() == View.VISIBLE && showDetails == true) {
                                                showDetails = false;
                                                Log.d("My prog", "hide after second choice");
                                            }
 
                                            showDetails = false;
                                        }
                                    });
Но проблема в том, что карта у меня "прыгает" когда скрывается или появляется company_details, то есть у меня слой не поверх карты, скажите как можно сделать, чтобы company_details появлялся именно поверх карты, не меняя ее размеров?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.06.2015, 04:53
Ответы с готовыми решениями:

Сделать RelativeLayout во весь экран устройства
У меня есть разметка активити activity_main.xml &lt;?xml version=&quot;1.0&quot;...

Фрагмент поверх другого
Меняю фрагменты след. кодом: public void fragmentChange(int id, boolean...

Меню, которое выезжает поверх другого
Как сделать такое меню которое выезжает поверх другого? Пример картинка

Как сделать вьюшку, чтобы она была поверх любых приложений?
Например, как это сделано в ГеймХацкере. Нигде не могу нарыть. Говорят про...

Как разместить элемент над центром в RelativeLayout?
Как разместить элемент над/под центром в RelativeLayout? А также слева/справа...

1
Pablito
2713 / 2159 / 732
Регистрация: 12.05.2014
Сообщений: 7,532
Завершенные тесты: 1
16.06.2015, 09:00 #2
Как сделать RelativeLayout поверх другого?
в это трудно поверить, но эти лаяуты нужно поместить внутрь FrameLayout и тогда они будут как-бы на разных слоях
(в код и разметку не вникал и не хочу)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.06.2015, 09:00

Как прикрепить програмно кнопку к другому элементу в RelativeLayout
Как прикрепить програмно кнопку к другому елементу в RelativeLayout ?

Отображение активити поверх другого активити
Ребят подскажите пожалуйста как такое сделать. Есть активити с картой, по...

RelativeLayout + Button
Народ как лучше делать разметку в xml Есть RelativeLayout (с картинкой в...


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

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

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